|  |  | 
> Hi,
>
> In developing my first POV-Ray scene I encountered a subtle artifact and I am
> not sure how to get rid of it. I have a 100% transmissive cylinder containing
> identically-transformed emissive media with a cylindrical distribution. When in
> front of a dark reflective texture, the edges of the cylinder appear dark (a
> little bit like a shadow, but obviously not a shadow). When in front of a
> brighter or flatter texture, the edges of the cylinder do not appear darker than
> the surroundings--the desired effect. This artifact seems a bit stronger when
> the cylinder is partially embedded in the dark-textured object. This image shows
> what I mean:
>
> http://www.freeimagehosting.net/image.php?923dd7c03e.png
>
> Could anyone suggest what causes this, and how I might get rid of it?
>
Change your reflective box with:
box { <-1,-1,-1>, <1,1,1>
    texture {pigment{Blue}finish{reflection 1 ambient 0 diffuse 0}}
}
Presto, you can no longer see where the front cylinder get in front of 
the box.
The reason: your ground plane is pure blue -> NO red and no green.
The gold box contribure a good amount of red and green.
The red media add some red.
Result: on front of the blue parts the only red comes from the media, 
while in front of the box, you have more red giving a brighter, less 
saturated, shade.
I'd change your container as follow:
#declare med1cont = cylinder {
          <0,1,0>, <0,-1,0>, 1
          pigment {rgbt 1}
interior{media {
    emission 7
    intervals 1
    samples 10
    method 3
    density {
         cylindrical color_map {
          [0 rgb <0,0,0>]
          [1 rgb <1,0,0>]
       }
    }
}
}
Then:
union{
    object { med1cont
       scale <.1,1.1,.1>
       translate <1,0,-1>
    }
    object { med1cont
       scale <.1,1.1,.1>
       translate <0,0,-2>
    }
}
Put the media in the container defined around the Y axis.
Then, as you translate the object, it's media will get translated with it.
You don't need media_interaction off and shadowless in your light 
source, as only the box can cast a shadow.
Also, the emissive media container already don't cast any shadow, so 
no_shadow is not usefull.
Alain
Post a reply to this message
 |  |