|
|
While continuing to think about yuqk / v4.0 texturing clean up /
changes, I took a detailed look at cutaway_textures.
I'm pretty sure the 0110 difference case below should end up as 'Red
Red'. The nullptr result for the pigment I see as a bug itself in any
case - the pigment should end up set to something valid.
The behavior is identical v3.7-stable, v3.8 beta 2 and yuqk on linux.
Do windows users see the same bug?
Bill P.
//...
default { pigment { rgb <1,1,0> } }
#declare Sph00 = sphere { 0, 0.5 }
#declare Cyl00 = cylinder { -1*y, 1*y, 0.50 }
#declare G = 0;
#declare R = 0;
#declare C = 0;
#declare B = 0;
#declare I00 = intersection {
object { Sph00
#if (G) pigment { Green } #end
}
object { Cyl00 translate +0.25*z
#if (R) pigment { Red } #end
}
#if (C) cutaway_textures #end
#if (B) pigment { Blue } #end
}
#declare D00 = difference {
object { Sph00
#if (G) pigment { Green } #end
}
object { Cyl00 translate -0.5*z
#if (R) pigment { Red } #end
}
#if (C) cutaway_textures #end
#if (B) pigment { Blue } #end
}
object { I00 translate -0.6*x }
object { D00 translate +0.6*x }
//...
=============
Default texture's pigment (DfltPig).
Intersection | Difference
------------ | ------------
|
Sphere Cylinder | Sphere Cylinder
BCRG Surface Surface | BCRG Surface Surface
-----|---------|----------|---| | -----|---------|----------|---|
0000 DfltPig DfltPig = | 0000 DfltPig DfltPig =
0001 Green DfltPig = | 0001 Green DfltPig =
0010 DfltPig Red = | 0010 DfltPig Red =
0011 Green Red = | 0011 Green Red =
0100 DfltPig DfltPig = | 0100 DfltPig DfltPig =
0101 Green Green = | 0101 Green Green =
0110 Red Red . | 0110 Nullptr Red ?
0111 Green Red = | 0111 Green Red =
1000 Blue Blue = | 1000 Blue Blue =
1001 Green Blue = | 1001 Green Blue =
1010 Blue Red = | 1010 Blue Red =
1011 Green Red = | 1011 Green Red =
1100 Blue Blue = | 1100 Blue Blue =
1101 Green Blue = | 1101 Green Blue =
1110 Blue Red = | 1110 Blue Red =
1111 Green Red = | 1111 Green Red =
Post a reply to this message
|
|