liquid_body
A solution shaded as a volume: Beer-Lambert absorption over the chord the view ray cuts through it
liquid_body
A solution shaded as a volume: Beer-Lambert absorption over the chord the view ray cuts through it
The colour of a fragment is what is left of the scene behind it after the light has crossed the body of liquid. The shader marches the chord the view ray cuts through an analytic truncated cone and attenuates the refracted background over that distance, so the rim of the vessel is pale and the middle is saturated, and both move together when one number changes.
That number is concentration: 0 clear, 0.5 amber, 1 violet. It sets the colour a reference thickness transmits; the absorption coefficients are derived from it, so raising it darkens the middle far faster than the rim.
Standing inside the volume — which is where the film's camera ends up — the thickness is the distance from the far wall back to the lens instead of the chord onward. lumin_gain adds the light the solution makes once it luminesces, proportional to how much of it the ray crossed. A light standing inside the body is skipped when the in-scatter is gathered, because that light IS the emission and counting it twice blows the vessel out.
Scoped to this part · feeds back into the world's score.