|
|
In article <3d635bd4@news.povray.org>, Warp <war### [at] tagpovrayorg>
wrote:
> First it's "the intersection with an invisible object should be ignored"
> and now it should not be ignored, but taken into account.
> Can you people decide whether to make the intersection calculation or not?
It is ignored as far as texturing and lighting is concerned, only the
media matters. Or you could extend it to work with non-refracting
transparency, in which case it simply wouldn't cast extra rays for
intersection calculations it has already done.
> And not incrementing the trace level counter does not mean that there
> wouldn't be as many recursion levels as intersections.
Depends on what you mean by "recursion levels". Non-refracting
transparency would not require any new rays to be traced, so the
overhead will be much lower.
> > A similar thing would apply to transparent but non-refracting surfaces.
>
> You still need the intersection points. In order to get the intersection
> points, you need to trace rays.
Of course. Avoiding the calculation isn't the point, avoiding
recalculation of the same intersections is.
As I said above, make a list of intersections instead of throwing away
the farther ones. Do this once instead of recomputing them for every
transparent non-refracting surface. For scenes with a lot of media
containers (particle system smoke being a good example) this would be a
lot faster. All the intersections would be found the first time around,
and the code would step through the list instead of tracing additional
rays.
This would be easy without the bounding, but I don't know how well it
could be integrated with the bounding tree code. One possible problem is
that it seems to ignore objects whose bounding boxes are further than
the nearest intersection point, this logic would need to be extended to
only ignore objects with bounding boxes further than the nearest opaque
and non-refracting intersection, and it will have to return a list of
all valid intersections instead of just the nearest one.
--
Christopher James Huff <cja### [at] earthlinknet>
http://home.earthlink.net/~cjameshuff/
POV-Ray TAG: chr### [at] tagpovrayorg
http://tag.povray.org/
Post a reply to this message
|
|