POV-Ray : Newsgroups : povray.advanced-users : Realistic scattering : Re: Realistic scattering Server Time
23 Apr 2024 02:55:24 EDT (-0400)
  Re: Realistic scattering  
From: clipka
Date: 6 Apr 2018 15:49:33
Message: <5ac7cf4d$1@news.povray.org>
Am 06.04.2018 um 19:27 schrieb IGM:
> clipka <ano### [at] anonymousorg> wrote:
>> You can model an ideal diffuser sheet using a patch primitive (such as a
>> triangle, an open mesh or a bezier patch*), and using the two-value
>> `diffuse` syntax, aka backside illumination, like so:
> 
> Is it possible also with simple objects like boxes? If not, why?

You'll need an object comprised of just a single surface.(*) Because
when POV-Ray computes the surface colour at a given point, it can easily
compute how brightly that very point on the surface is directly
illuminated (this has been one of the most basic operations in POV-Ray's
algorithm for ages, even including a test whether the light comes from
the front or the back of that surface), but taking account light shining
on other locations of the object's surface is an entirely different
matter and far more complex.

(*Note however that this could be a /portion/ of a box, with the rest
cut away using `clipped_by`. Or you could do some fancy tricks with
interior_texture so that only one side appears to be diffuser-sheet-ish
while the other effectively becomes invisible.)

That said, you /may/ have some luck with subsurface light transport,
which is specifically designed to pick up light transported from other
points on the object's surface. However, it is designed for materials
where the scattering of the light happens in the bulk rather than at the
surfaces, and it also can only handle isotropic scattering at the moment.


>> This tells POV-Ray that from all the light shining onto the surface of
>> the object, 60% should be reflected in a lambertian manner, i.e.
>> independent of the incident light angle and with a cos-law distribution,
>> while another 30% should be emitted on the other side, also independent
>> of the incident light angle and with a cos-law distribution.
> 
> Are photons needed for this effect?

Nope. Just a light source, the single surface, and the two-parameter
`diffuse`.


>> Of course real-life diffuser sheets aren't ideal, as transmitted light
>> /is/ dependent on incident light angle, so if you need to model the
>> material more precisely, in its current form the backside illumination
>> is probably of little use to you.
> 
> May "fresnel" keyword help?

Presumably not; while it does indeed introduce both a dependency on the
incident light angle as well as a dependency on the outgoing light
angle, it does not introduce any dependency on the /relationship/
between the two angles, something that real-life diffuser sheets do
exhibit(*).

(* The primary reason for this is that while you want a diffuser sheet
to scatter light, you still want it to transmit as much of it as you can
get away with. For the outgoing light direction to be perfectly
independent from the incoming light direction would mean that the
outgoing light direction would also have no preference for either side
of the sheet, so you'd end up transmitting only 50% of the light, while
the other 50% would be spilled back to the illuminated side.)

What we'd really need to model real-life diffuser sheets would be a
mechanism that is similar to the diffuse backside illumination (as
modeled by the second `diffuse` parameter) in that it picks up light
from the other side of the surface, but mathematically more similar to
`specular` or `phong`.

It probably would be quite easy to implement, but I haven't come up with
a neat syntax yet. Two-parameter forms of "specular" or "phong" don't
quite cut it in my book.


Post a reply to this message

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