OcclusionQuery?

Feb 13, 2008 at 12:56 PM
Edited Feb 13, 2008 at 12:57 PM
Did you think about using OcclusionQuery to cull the nodes that are inside the frustum but behind another node in a way we can not see it?
I am using it to cull models that are behind any other model or terrain height, and it works pretty nicely.

I am also using LOD for models and my fps stays very high,

So, if you manage to implement these two things, it would help a lot for this project.
Coordinator
Feb 13, 2008 at 5:55 PM
OcclusionQuery? I'm not familiar with that. Will have to look it up. Is it a new GSE 2.0 featurre?
Are you using this component? I would like to see what people are doing with it.
Feb 13, 2008 at 9:29 PM
Edited Feb 13, 2008 at 9:30 PM
It is a XNA 2.0 feature.
And, no. I am not using your component yet. I am trying to learn how to implement a QuadTree.
Feb 20, 2008 at 10:20 PM
Edited Feb 20, 2008 at 10:26 PM
OcclusionQuery eh? Sounds exciting. I'm trying to move from XNA 1.0 to XNA 2.0 at the moment.

This is my implementation of your terrain component. The last five screenshots are using the component, which looks really nice.
http://www.flickr.com/photos/16947982@N06/sets/72157602800124340/

I also have a feature request. I should probably do this myself but I had enough trouble working it out the first time around, but would you consider adding catmull-rom smoothing to nearby quads? Adding an interim vertex makes it look amazingly smooth. Here's an example from an earlier terrain component (that lacked quadtree optimisation) that I modified, no sharp edges anywhere. The mesas in the distance were one quad raised and then smoothed with a single division:
http://www.flickr.com/photos/16947982@N06/1875981345/sizes/o/in/set-72157602800124340/
Coordinator
Feb 28, 2008 at 4:02 PM
nih, Thank you for posting your usage of this component. Those photos look good.

I hope to begin adding new features to this component in the future, but alas, right now I'm working on application programming stuff (contract work) to get my finances straighted out (growing up is not all it's cut out to be, ugggg, buying your own toilet paper is not what a kid thinks about when getting in a hurry to grow up:)

I would love to add smoothing features, would have to consider how it impacts performance, right now a single index buffer is used, could mod that to use 2, one for close up.

Was adding grass/trees hard with the way the project is setup right now? I planned on adding "shader instancing" for this kind of thing.
Mar 30, 2008 at 8:50 AM
The sample with the trees isn't using your component, that's an older version.

The sample with the grass (which does use your component) was a piece of cake. Shader instancing and quad tree optimisation for placed objects (and collision/LOD determination) would have sped things up an enormous amount though. Unfortunately I was a struggling a bit at the time so I didn't use your component to place any of the objects, I just fetched the height for a given location from it.

In any case, keep up the good work! I've been reading up on LOD patching for terrain and some bezier stuff. It doesn't sound too complicated.

http://www.gamasutra.com/features/20000228/ulrich_02.htm
http://www.gamasutra.com/features/20000403/turner_01.htm
http://www.gamasutra.com/view/feature/2709/multithreadedterrainsmoothing.php
http://www.gamasutra.com/view/feature/3004/dynamiclevelofdetailterrain_.php