Greetings,
I am in the process of creating a terrain engine. I have reached the point in development where I need to implement crack prevention for LOD patches (the method I'm using is Geomipmapping). I have thought up a method of doing it, however, and I would like some feedback.
First off, the terrain is organized in patches where each LOD has its own index buffer. I was thinking that in order to fix the cracks, I would create extra index buffers for the right and left, top and bottom sides. So, I would create the main index buffer like this:
'+' = vertex that is left out
'O' = indexed vertex
+ + + + + + + + +
+ O O O O O O O +
+ O O O O O O O +
+ O O O O O O O +
+ O O O O O O O +
+ O O O O O O O +
+ O O O O O O O +
+ O O O O O O O +
+ + + + + + + + +
Then for each LOD, there are separate index buffers created for the left and right side like this:
O + + + + + + + O
+ O + + + + + O +
O O + + + + + O O
+ O + + + + + O +
O O + + + + + O O
+ O + + + + + O +
O O + + + + + O O
+ O + + + + + O +
O + + + + + + + O
so the engine would create three of these index buffers, one for each possibility, right, left, or none. Then for the top/bottom the engine would create 3 more index buffers per LOD the same way as the right/left ones, only rotated at a 90 degree angle. I created it this way because rather than switch the index buffer 5 times per patch, it would switch only 3 times.
So my question is this: is this an good way to do it? I hope I haven't confused you, this is about the extent of my grasp on this subject.
Thoughtful replies would be helpful.