目前我还没有解决在极点之间无缝地贴图正二十面体的方案。这一原始形状的贴图似乎是一个常见的问题,尚未完全解决。我已经进行了大量的研究,并尝试了许多不同的方法来生成UV坐标,最接近(且最小)的方法是:
GLfloat u = 0.5f * ( 1.0f + atan2( z , x ) * ( 1 / M_PI ));
GLfloat v = acos( y ) * ( 1 / M_PI );
一个二十面体或地球仪是各种开源框架的一部分,例如jMonkeyEngine或Geist3D,但似乎没有一种实现能够正常工作。将展开的矩形纹理映射到它上面应该不是不可能,我错了吗?欢迎任何代码片段。
我已经上传了使用openFrameworks 0.61为iPhone构建的Xcode项目,您可以在此处找到:here,其中还有两个PNG文件,每个文件显示另一种接缝变化。