Terrain silhouette
#1 Crossbones+ - Reputation: 1064
Posted 05 May 2011 - 03:10 PM
How can I increase the stability of silhouettes without increasing the number of triangles?
Aqua Engine - my DirectX 11 game "engine" - In development
#3 Crossbones+ - Reputation: 1064
Posted 06 May 2011 - 01:01 PM
Yes.Are you shifting all the outer levels at the same time as the innermost level?
But if I update the half as frequently as the next closer level, the levels will overlap each other right?
Aqua Engine - my DirectX 11 game "engine" - In development
#4 Members - Reputation: 165
Posted 06 May 2011 - 04:11 PM
Yes.
Are you shifting all the outer levels at the same time as the innermost level?
But if I update the half as frequently as the next closer level, the levels will overlap each other right?
If you implemented geometry clipmaps correctly (as in http://research.microsoft.com/en-us/um/people/hoppe/geomclipmap.pdf) then it shouldn't ...
(sorry if this is not really usefull, but apparently what you implemented is NOT geometry clipmaps, so until you explain your algorithm/implementation, we won't be able to help much
#5 Crossbones+ - Reputation: 1064
Posted 08 May 2011 - 07:45 AM
For what, Ive understood the coarser levels are only updated when the next vertex position is exactly in the position of the old vertex (well I didnt explained it very well
"The choice of grid size n = 2k−1 has the further advantage that the finer level is never
exactly centered with respect to its parent next-coarser level. In other words, it is always
offset by 1 grid unit either left or right, as well as either top or bottom (see Figure 2-4),
depending on the position of the viewpoint."
This 1 grid unit offset is the L-shaped strip right? But how do this prevent levels from overlapping?
Aqua Engine - my DirectX 11 game "engine" - In development
#6 Members - Reputation: 165
Posted 09 May 2011 - 10:21 AM
Ive read the paper again, and it seems my implementation is missing somethings
For what, Ive understood the coarser levels are only updated when the next vertex position is exactly in the position of the old vertex (well I didnt explained it very well)
"The choice of grid size n = 2k−1 has the further advantage that the finer level is never
exactly centered with respect to its parent next-coarser level. In other words, it is always
offset by 1 grid unit either left or right, as well as either top or bottom (see Figure 2-4),
depending on the position of the viewpoint."
This 1 grid unit offset is the L-shaped strip right? But how do this prevent levels from overlapping?
Quick answer : there always is a gap between 2 levels. This gap allow you to move the finer level one unit without moving the next coarser one. The L-shape is there to fill the gap. When your finer level move so that it will overlap the next coarser level, then and only then you move your coarser level.
Long answer : English is not my primary language, so explaining something like this in english is a bit above my abilities
What I would advice is : take a pen, a paper with a grid, and draw a sample case. This is what I did, and it helped me visualize the whole thing.
It's not so difficult, but explaining it by words is
#7 Crossbones+ - Reputation: 1064
Posted 09 May 2011 - 11:52 AM
there always is a gap between 2 levels. This gap allow you to move the finer level one unit without moving the next coarser one. The L-shape is there to fill the gap. When your finer level move so that it will overlap the next coarser level, then and only then you move your coarser level.
So the finer level always has to move two units right? Because the height of the L-shape of the next coarser level is always twice of height of each finer level quad...
Aqua Engine - my DirectX 11 game "engine" - In development
#8 Members - Reputation: 165
Posted 11 May 2011 - 10:06 AM
Your english is ok and thank you for trying to help me
there always is a gap between 2 levels. This gap allow you to move the finer level one unit without moving the next coarser one. The L-shape is there to fill the gap. When your finer level move so that it will overlap the next coarser level, then and only then you move your coarser level.
So the finer level always has to move two units right? Because the height of the L-shape of the next coarser level is always twice of height of each finer level quad...
Yep, that's right.
if you haven't already, take a look at http://research.microsoft.com/en-us/um/people/hoppe/gpugcm.pdf
It explains things in a different manner, and it helped me understand a few things (I used both papers to fully understand the geometry clipmap algorithm)






