尝试将UV坐标映射到球体时,我遇到以下问题
glm::vec2 calcUV( glm::vec3 p) { p = glm::normalize(p); const float PI = 3.1415926f; float u = ((glm::atan(p.x,p.z) / PI) + 1.0f) * 0.5f; float v = (asin(p.y) / PI) + 0.5f; return glm::vec2(u,v); }
这个问题在stackoverflow question很好地解释了,但是,我仍然没有得到如何解决它.从我读过的内容来看,我必须创建一对重复的顶点.有谁知道一些好的和有效的方式吗?