POV-Ray : Newsgroups : povray.newusers : Overlap of "filter" and "transmit" on layered textures : Re: Overlap of "filter" and "transmit" on layered textures Server Time
19 Apr 2024 09:14:23 EDT (-0400)
  Re: Overlap of "filter" and "transmit" on layered textures  
From: Nathan Kopp
Date: 21 Sep 1998 16:26:05
Message: <3606A736.25533F45@ltu.edu>
Author's note: This message probably goes far beyond the scope of this
newsgroup (which happens to be 'new users'), but I feel I should provide the
correct explanation since my previous one was wrong.
----
Soichi,

My original explanation was flawed.  Sorry for the confusion.  The pigment is
computed in two parts, one for the opaque part and one for the
filtered/transmitted part.  What you wrote does describe the resulting behavior
of POV quite well.

So if anyone is interested, here's what I should have said last time:

The opaque part (Result_Colour) is computed by addition as expected, and the
filter part (Filter_Colour) is computed by multiplication as I described.

Later, a single ray is refracted through the object (provided that it is at
least semi-transparent), and then the color returned by the refracted ray
(Refracted_Colour), is combined with the Result_Colour as follows:

Result_Colour[i] += Refracted_Colour[i] *
         (Filter_Colour[i] * Filter_Colour[FILTER] + Filter_Colour[TRANSM])

for each component.  (Volume attenuation is also included in there, but I left
it out.)

Thus, after the final Filter_Colour is computed by the multiplication that I
described earlier, if both the filter and transmit values turn out to be zero,
the Refracted_Colour will have no effect on the Result_Colour.

Also, this accounts for the over-brightness caused by rgbft<1,1,1,1,1>.

OK, I'm pretty sure that this is correct.  Just in case anyone cares.

-Nathan


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.