Thaumaturge said:
Hmm… I'm not sure, but it may be that normalising at each step (rather than only at the end) might help.
Running this in my imagination, i think normalizing each vertex on it's creation would help to get more uniform edge lengths.
If you tessellate a flat faced polyhedra, and project only the final result to the sphere, the edge lengths near the original vertices will be shorter, because they are initially already close to the sphere.
Thaumaturge said:
I also seem to think that it might work better to split your tetrahedron faces at their vertices, with new edges running in towards what was the centre of the face. This should ensure that you keep producing triangles all the way through.
Taking this literally, no this would be bad. If you create new vertices only at triangle centers, the initial edges would never refine to become round.
Splitting edges and forming a new triangle from the midpoints is good. It turns one initial triangle into 4 new triangles, improving the approximation over the whole surface. Triangles have similar area and similar angles. So that's ideal, and afaik it's called ‘loop subdivision’
Another good method would be to split edges, create one new vertex from triangle canter and create 3 new quads for the triangle. That's Catmull-Clark subdivision.
_Flame_ said:
Is it because tetrahedron not the good starting shape and it is better to use a different shape like icosahedron?
Icosahedron would give more regular initial triangles, after that you still have to choose from the same two options of subdivision.
Because your screenshot has no back face culling, it's confusing and i can't see what you have done.
But it does not look wrong. I can see higher tessellation at some spots. Normalizing should improve this?
Maybe you already have the best result we could expect from a tetrahedron, but that's maybe not what you want.
Notice: Tetrahedron creates only 4 singularities (at initial vertices), so our irregularity will be focused over 4 spots.
Trivial latitude / longitude tessellation has just 2 singularities, and here the poles really pop out from looking at the wireframe, because all sliver triangles focus on those poles, while all the rest is quads. That's sort of what i mean with 'focused irregularity'.
If you use a cube for the start we have 8 singularities, the initial vertices where only 3 quads meet, while all other vertices have 4 quads. That's much better already.
IDK how many singularities a icosahedron causes, but likely much more.
But singularities have their own downsides, for example texturing, which becomes much harder.
So if you want to texture your sphere, a cube is the clear winner and you should use that.
If you want cool wireframe, icosahedron gives that.
… wow, that was quite a lot of blah about simple spheres ;D