我试图将等角线图拆分为肘形图,它指向https://stackoverflow.com/a/36976448/10988559,并且在here(jsfiddle)上有效(我认为是这样)。
/** MAIN CODE **/
void main() {
vec3 xyz = uvToXYZ(vUv, ${face});
float x = xyz.x;
float y = xyz.y;
float z = xyz.z;
float theta = PI + atan(y, x);
float r = pow(x * x + y * y, 0.5);
float phi = PI_DIV_2 - atan(z, r);
float uf = theta / PI2;
float vf = phi / PI;
if(uf > 1.0) {
uf -= 1.0;
} else if (uf < 0.0) {
uf += 1.0;
}
gl_FragColor = texture2D(texture, vec2(uf, vf));
}
但是,为什么在glsl中仍然存在奇异性,而在python中为什么不存在奇异性?我怎么了感谢您的帮助。