|
![](/i/fill.gif) |
Warp wrote:
> I don't understand the huge difference between using +a0.0 and any
> value
> above 0.0.
The huge difference is: With +a0.0 every pixel is sampled, with any
value above only pixels which differ to their neighbours are sampled.
> Consider this simple scene:
>
> camera { location -z*10 look_at 0 angle 35 }
> light_source { <1000,2000,0>, 1 }
> plane
> { y,-1 pigment { checker rgb <1,1,.5>, rgb <.8,.4,.2> }
> rotate <-10,30,-30>
> }
>
> When I rendered it with +a0.01 +am2 +r4, the resulting image is the
> following:
> http://www.cs.tut.fi/~warp/aa1.jpg
>
> There are big visible artifacts.
> However, when I rendered it with +a0.0 +am2 +r4, the result is
> almost
> perfect:
> http://www.cs.tut.fi/~warp/aa2.jpg
>
> It doesn't seem to matter how small the threshold value is. If it's
> larger
> than 0, it will cause the artifacts.
> I don't understand why.
These artifacts appear because it's coincidence (in that image area)
which color any pixel has and if two pixels differ or not.
If they differ, samples are taken and it looks as it should look. But
if they don't differ not the mixed color is used for the pixel but one
of the unmixed colors. So it's coincidence which color any pixel has in
the final image.
To avoid this problem it's neccesary to take more than one sample per
pixel to decide if the pixel must be sampled. So the only workaround
with the current AA methods is to sample every pixel with +a0.0.
Sorry, I don't speak English very well, so please tell me if it was not
understandable.
Felix Wiemann
Post a reply to this message
|
![](/i/fill.gif) |