|
|
"Marc-Hendrik Bremer" wrote:
>There is an isosurface cache already, isn't it?
Yes, there is an isosurface cache. But that is not for hidden isosurfaces.
That is for non-intersecting rays. The cache is especially effective to
small(or thin) isosurfaces in a large isosurface container.
For example,
isosurface{
function{f_torus(x,y,z,0.9,0.05)}
contained_by{ box{-<1,0.1,1>, <1,0.1,1>}}
}
The statistics is
----------------------------------------------------------------------------
Ray->Shape Intersection Tests Succeeded Percentage
----------------------------------------------------------------------------
Isosurface 37426 4648 12.42
Isosurface Bound 80874 37434 46.29
Isosurface Cache 28748 24664 85.79
----------------------------------------------------------------------------
In this case, the cache hit ratio is 66% (24664/37426).
This cache technique uses a function value of the previous ray and eliminates
unnecessary calculation. Maybe I will to explain that technique with figures...
R. Suzuki
Post a reply to this message
|
|
|
|
"R. Suzuki" wrote:
>
> [...]
>
> This cache technique uses a function value of the previous ray and eliminates
> unnecessary calculation. Maybe I will to explain that technique with figures...
>
Sounds interesting, some more details would be appreciated.
I suppose since it only uses the previous ray it's much less efficient if
for example radiosity or reflection are involved.
Christoph
--
Christoph Hormann <chr### [at] gmxde>
IsoWood include, radiosity tutorial, TransSkin and other
things on: http://www.schunter.etc.tu-bs.de/~chris/
Post a reply to this message
|
|
|
|
R. Suzuki schrieb in Nachricht <3c3ec00d@news.povray.org>...
>That is for non-intersecting rays. The cache is especially effective to
>small(or thin) isosurfaces in a large isosurface container.
That is, if you have a "fitting" container-object the cache does not help
that much? Now I understand why the cache-hit percentage is often quite low
with rawly poxed shaped objects.
>This cache technique uses a function value of the previous ray and
eliminates
>unnecessary calculation.
And couldn't this cache not be saved and reloaded (both at will and command
of the user), to eliminate the need of recalculating all these missing rays?
Or is nothing saved and only the function value of the one previous ray is
stored and used?
Marc-Hendrik
Post a reply to this message
|
|