|
|
In this scene:
global_settings { assumed_gamma 1.0 }
camera { location <1.5, 3, 3> look_at <1.5, -1, 0> }
light_source { 10000, rgb 1 media_attenuation on }
intersection { plane { y, 0 } plane { -y, 2 } pigment { transmit 1 }
interior { fade_power 1001 fade_distance 2 fade_color <1, 0, 0> } }
cylinder { <3, 2, 0>, <3, -4, 0>, .3 pigment { rgb 1 } }
cylinder { <2, 2, 0>, <2, -4, 0>, .3 pigment { rgb 1 }
finish { ambient 0 diffuse 1 } }
cylinder { <1, 2, 0>, <1, -4, 0>, .3 pigment { rgb 1 }
finish { ambient 1 diffuse 0 } }
cylinder { <0, 0, 0>, <0, -2, 0>, .3 pigment { blue 1 } }
The camera is looking down at three white cylinders, which pass through a
two-unit clear layer with red-colored light attenuation in its interior. The
one on the left uses the default finish, the middle one has only diffuse 1,
and the right one has only ambient 1. (A fourth, blue cylinder simply marks
the height of the clear layer.)
Notice the abrubt change in color at the bottom of the layer, in all three
cylinders. This should not happen because the pigment is clear and the
attenuating interior should result in only continuous changes.
Also, the ambient cylinder is completely white all the way to the bottom of
the layer. The attenuation is having no effect on it, except where it pokes
all the way through. The problem is visible in the default-finished cylinder
too.
These problems are making attenuation pretty much useless for what I'm
trying to do (in particular, model some reasonable-looking water). So I
tried using absorbing media instead. But when I replace the interior
statement in the code above with:
interior { media { absorption rgb <1, 0, 0> } }
absolutely nothing happens! All three cylinders are as white as ever.
It doesn't seem possible to me that all these features could be so horribly
broken, but it seems that they are. Am I doing something wrong, or are these
bugs?
Anders
Post a reply to this message
|
|