GPU-Based Geometry Clipmaps Transition

Started by
3 comments, last by Funkymunky 14 years, 7 months ago
I'm currently implementing GPU-Based Geometry Clipmaps after the paper in GPU Gems 2. I have a working implementation so far but currently I'm not able to implement the transitions between to different lod levels. I don't understand the principle behind it. In the example shader code there is only 1 texture lookup without a chaning mipmap level so how do they do the transitions? Do they use a extra texture for each lod level and encode the transitions into each texture? Or are they using one big texture with transitions encoded in it? Both would require to recompute all textures on each movement because of the transitions in them? Currently I'm using one big texture for all lod levels and simply shifting the texture in the vertex shader to achive a movement. When the camera reaches the border of the texture I update it. It would be great if there is a transition technique to preserve this. What possible transitions techniques are there and what are the pros and cons? Current State: (The artifacts are because of only 8 bit height data didn't yet find better data) Thanks in advance Ingrater
http://3d.benjamin-thaut.de
Advertisement
the trick is that you use a floating point texture, and you encode the height of the current level in the integer part of the float, and the height of the next coarsest level in the fractional part. From your screenshot, you're already judging the distance to the edge of the clipmap level, so you just need to geomorph the vertices at the edge of the level that don't fall on even boundaries. You'll need to start rendering each floating point texture individually and doing the toroidal updates.
That makes sence. Thanks for enlightening me.

Regards Ingrater
http://3d.benjamin-thaut.de
You'll still end up with some tiny gaps (1 pixel usually) even using the above method. Remember to include the degenerate triangles mentioned in the article to close these.
yeah adt7 is right, the t-junctions will still cause slight gaps that will look like single pixels glittering along the level boundaries, so you need to render the rings of degenerate triangles

This topic is closed to new replies.

Advertisement