|
![](/i/fill.gif) |
In article <3A6B58FE.5D934F76@peak.edu.ee>, Margus Ramst
<mar### [at] peak edu ee> wrote:
> Why? Only an intersection test would be done for objects not in the
> camera's group - no reflections, lighting, textures, volume etc.
> Granted, it would still be slower, but I don't think the performance
> hit would usually be that bad.
An intersection test can be quite costly...think about where most of the
slowdown of complex CSG or isosurface scenes is coming from. But you
shouldn't even need an intersection test, just skip checking the object
at all if the object's world ID doesn't match the current world ID...but
it is still an unnecessary piece of work to be done, especially for
adding features later...the coder would have to write code for handling
which universe their object/effect is in. And memory use would
increase...assuming a limit of 256 "worlds", by one additional byte for
each object/camera/light/glow/global_settings/any other entity in the
scene, ...which could add up to a lot, especially with highly complex
CSG objects.
Having each "world" be separate would allow essentially unlimited number
of worlds (not that anyone is likely to have more than 256...), have
lower memory overhead, eliminate any extra work during rendering, etc...
Extending the separation into the syntax means simpler parsing code,
easier to understand scenes, and would allow easily combining of scenes
that weren't originally written to support multiple worlds (you would
just include the scene file in it's own world {} block).
But of course all this is theoretical, since work on POV 4.0 hasn't even
started yet and we have no idea how different the scene language will be.
> And why would the files be confusing?
A jumble of cameras/lights/objects/global settings each belonging to a
different scene? Files get complex enough as it is...and it makes sense
to group the stuff for each virtual universe together. It just seems
like it would be easier to use...
--
Christopher James Huff
Personal: chr### [at] mac com, http://homepage.mac.com/chrishuff/
TAG: chr### [at] tag povray org, http://tag.povray.org/
<><
Post a reply to this message
|
![](/i/fill.gif) |