because sometimes it's hard to follow an explanation only in mind I added a few pictures to this post. Sorry for those which have a slow internet connection.
First of all, I'm programming a planet renderer. Im using the cube to sphere algorithm from mathproofs: http://mathproofs.bl...-to-sphere.html
My problem is that it running into the common floation point error because the algorithm forces me into a specific range (imho), and I don't know how to getting arround it.
The algo morphes all 6 sides of a cube in to a sphere.
One side look like this after morphing:

Using the algo on all 6 sides I get a sphere inbetween -1 and 1 (scale 1):

That LOD is implemented as an quadtree. When coming closer the chunk is seperated in 4 smaller chunks each with the same amount of vertices as the old chunk.

These chunks can be seperated too, so I get a smooth surface even if im extremly close to the planet (in theory).
This is how it look like if I create a really deep tree and zoom out:

Here comes the trouble.
On the tiny chunks the curvature is extrem small. Its so small that I run into floating point imprecision
and the result is that:

As you can see the surface is not flat and when I change the angle of the camera everything is "wobbeling".
The quadtree depth is at 18 that means that the smallest chunk is one 262144th of the original chunk in sidelength.
Visualising this on 2D it looks like this:

What can I do to solve this problem?
I already fixed my camera to Vector3.Zero and just move the world around me to get highest precision near to my camera, but I still got the problem.
I appreciate every comment. Thanks.






