POV-Ray : Newsgroups : povray.general : no_shadow and photon pass_through : Re: no_shadow and photon pass_through Server Time
31 Jul 2024 08:22:38 EDT (-0400)
  Re: no_shadow and photon pass_through  
From: Tim Attwood
Date: 19 Sep 2007 06:09:53
Message: <46f0f571$1@news.povray.org>
The docs are off a bit, but for clarification...

Docs: "The keyword pass_through causes
photons to pass through the object unaffected
on their way to a target object."

Docs: "Once a photon hits the target object,
it will ignore the pass_through flag."
Photons can still be deposited on objects
with pass_through on.

When no_shadow is used in an object then
photons are not deposited on it.

This is usually the effect that people notice
and incorrectly equate with pass_through or
collect on.

The docs suggest that you can set pass_through
off on no_shadow objects to prevent photons
from being cast thru it, but this isn't the case.
If POV was actually this way the banded
part of the caustics from the far water would
disappear when pass_through was off in your
test scenes, but the spots from the near water
would remain on the rear box anyways.

There are ways to work-around this if you want
such images.

Example 1: You can split the water into
two objects and remove target from one of
the sides to only have the near caustic on
the rear wall.

Example 2: You can render the image with
pass through set on the center wall with
save_file set to catch the caustics, then
re-render with load_file and no_shadow
to let the spotlight hit the far water, but
still have caustics on the no_shadow wall.


suggested documentation change for 3.6...
3.6.3.2.2  Shooting Photons at an Object

remove old wording
---------------------
If you use the no_shadow keyword, the object
will be tagged as pass_through automatically.
You can then turn off pass_through if necessary
by simply using photons { pass_through off }.

replace with
------------
If you use the no_shadow keyword, no photons
will be deposited on the object, and photons
will pass through the object.  When using the
no_shadow keyword in an object the pass_through
and collect keywords are ignored.

suggested code improvement
-----------------------------
Deposit photons on no_shadow objects. The old
behavior can be preserved with collect off.


Post a reply to this message

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