У меня есть сфера в 3D. Во время выполнения я создаю для него динамическую текстуру 2048x1024. На этой текстуре нарисован крошечный круг, который может быть где угодно. У меня есть x/y этого круга на текстуре и, следовательно, соответствующие координаты UV. Теперь я хотел бы интерполировать, где именно на моей сфере находится этот маленький кружок.
Это код, который я использовал, но он всегда кажется отклоненным на +/- 90 градусов.
// U, V are original UV obtained from dynamic texture.
_u = Math.PI * U;
_v = -2 * Math.PI * V;
_x = Math.cos(_u) * Math.sin(_v) * radius;
_y = Math.sin(_u) * Math.sin(_v) * radius;
_z = Math.cos(_v) * radius;
Спасибо за любую помощь!