|
![](/i/fill.gif) |
On Mon, 6 Mar 2000 16:04:08 -0500, "Nathan Kopp" <Nat### [at] Kopp com>
wrote:
>Peter Popov <pet### [at] usa net> wrote...
>> Is it possible to speed up the media calculations where multiple
>> densities are involved? More precisely, can some type of bounding be
>> used with finite density patterns such as spherical, cylindrical or
>> planar? This would be especially beneficial for smoke, fire and steam
>> modelled with multiple spherical "puffs".
>>
>
>Using multiple media container objects, one for each density, to bound the
>media should produce the desired result. Remember to increase the max trace
>level if you try this suggestion.
This solution is *extremely* slow, especially when a couple of
hundreds or more objects are involved (like in dense smoke). Blobs
turn out to be the best in this case (and speed comparisons prove it)
but the problem with testing every sample against every density
remains.
Take a spherical density. Why test 30 samples against it if the ray
doesn't pass through its bounding volume at all? Intersect the ray
with the bounding object of the density, and if and only if there are
intersections (they will be exactly two) go on with shooting the
samples. The two intersection points will actually be samples of
density 0 so they can be cached and used in the calculations so no
redundant work will be done.
I think this will speed up rendering for any value of samples/pixel
greater than 2.
Peter Popov
pet### [at] usa net
ICQ: 15002700
Post a reply to this message
|
![](/i/fill.gif) |