Hello,
I'm working on an application, which uses OSG for rendering. I would
like to implement a new rendering system, which would incorporate
occlusion culling using occlusion queries. I know how the system should
work, but I'm not sure how to do it in OSG (I'm not that experienced
user of OSG yet). I would like to know how right or wrong I am with
the following thinking:
First problem is that the OSG renderer is build upon an idea that
a frame should work like
{
culling;
rendering;
}
, however in my case it's more like
{
while (!done} {
cull;
render_auxiliary_objects;
if (!culled)
render actual objects;
}
}
so it looks like I will have to implement own
RenderBin::_drawCallback::drawImplementation, am I right?
Furthermore, I will need to add a spatial organization based on
axis-aligned BSP tree (or octree or something like that) and remove
state-sorting somehow (probably using some flag, this should be easy
I think).
I don't know how to do any of these yet, but right now I am most puzzled
about the spatial organization of objects. And whats worse - each object
has some culling information stored from the previous frames and that
information is camera dependent.
So, thinking of a best solution, it is probably difficult to implement
it as a some kind of a plg-in module, which can be added to any
application and activated with a sigle Init() function.
Sorry for such a long post. I would be grateful for any pointer anyone
could give me. (Especially if anyone made something similar :) )
Thanks,
Vit
_______________________________________________
osg-users mailing list
[email protected]
http://openscenegraph.net/mailman/listinfo/osg-users
http://www.openscenegraph.org/