POV-Ray : Newsgroups : povray.beta-test : How do we want photons { pass_through } to work? : Re: How do we want photons { pass_through } to work? Server Time
2 Jul 2024 10:39:22 EDT (-0400)
  Re: How do we want photons { pass_through } to work?  
From: MDenham
Date: 2 Apr 2010 17:55:01
Message: <web.4bb6677d910f6b384833458a0@news.povray.org>
clipka <ano### [at] anonymousorg> wrote:
> First, here's bad news:
>
> We have a bug in photons { pass_through }.
>
> The current implementation mechanism is (and apparently has always been)
> causing an "amplification" effect on photons. See
> http://bugs.povray.org/task/93 for an example scene.
>
> Then, there's good news:
>
> I located the error.
>
> There is a piece of code in PhotonTrace::ComputeLightedTexture that
> causes pass_through objects to *both* let the photon pass unaffected
> *and* have a clone of it pass trough it with all effects - transmit &
> filter attenuation, reflection & refraction - the whole smash.
>
> Duh!
>
> Question is, how to fix this thing? Do we just want to suppress
> reflection & refraction but do transmit & filter attenuation? That would
> be my favorite, though according to the documentation only media-based
> attenuation should occur.

I suspect people may have been using this for an artistic effect to date, so I'm
in favor of throwing an optional parameter to pass_through:

Omitted/"double": Current effect.
"transmit"/"filter": Proposed effect; suppresses only reflection/refraction.
"media": Suppresses all non-media attenuation.

At least, if doing it this way wouldn't make things more complicated than it's
worth.


Post a reply to this message

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