[X3D-Public] HW Occlusion Culling - was Re: Announcement: view3dscene 3.4
John A. Stewart
alex.stewart at crc.ca
Wed Aug 26 08:04:44 PDT 2009
Alan, Michalis;
>
> How did you find the hardware occulsion query implementation. Did
> it help a lot with your framerate? Did you compare it to a CPU
> culling method?
(Ditto on the congratulations on the view3dscene release, btw)
This is not quite Michalis' scenario, but a FYI.
When I did occlusion culling in FreeWRL, I went straight to using the
GPU. One can turn it on/off by using an environment variable. There
was no code to do culling in software; I looked at doing it; but never
bothered implementing it. Bounding boxen are generated for collisions
and near/far plane calculations; but even these are not used for
occlusion culling.
I found different cards would give different results; some would
return results quickly, others not so. So I implemented a "query every
so many draws" scheme. Sometimes when you navigate quickly, you can
see geometry suddenly appear around a new "visibility edge"; there are
some other artifacts that can be visible with FreeWRL's implementation
if you know exactly to look for.
This is also how FreeWRL does VisibilitySensors - so on the odd bit of
hardware that does not do OcclusionCulling, VisibilitySensors fail
with a warning message. (eg, exporting a window with X11 to another
server can create this message)
Things may be better now in terms of GPU reporting results; I did the
main bits of FreeWRL's OcclusionCulling years ago now; have not done
much testing recently.
Michalis; what are your thoughts?
Thanks;
-----------------------------------------------------------
John A. Stewart
Team Leader: Networked Virtual Reality
alex.stewart at crc.ca
Network Systems and Technologies -
Systemes et technologies des reseaux
Communications Research Centre Canada |
Centre de recherches sur les communications Canada
3701 Carling Ave. | 3701, avenue Carling
PO Box 11490, Station H | CP 11490, succursale H
Ottawa ON K2H 8S2 | Ottawa (Ontario) K2H 8S2
http://www.crc.ca
More information about the X3D-Public
mailing list