我有一个纹理,我正在维基百科上围绕一个类似于这个图像的球体。
https://upload.wikimedia.org/wikipedia/commons/0/04/UVMapping.png
我想要实现的是从纹理中获取一个UV坐标,比如说(0.8,0.8),在上面的例子中大致在俄罗斯附近。
使用此UV以某种方式计算我需要应用于球体的旋转,以使UV以球体为中心。
有人能指出我需要计算数学方程式的正确方向吗?
编辑 - 有人指出我实际上正在寻找球体的旋转,因此紫外线以相机为中心。因此,从0,0,0的旋转开始,我的相机指向uv(0,0.5)
由于
答案 0 :(得分:2)
这种特殊类型的球面贴图具有非常方便的特性,即UV坐标线性与相应的极坐标坐标成比例。
为方便起见,我们假设:
(0.5, 0.5)
对应格林威治子午线/赤道 - 即(0° N, 0° E)
(θ, φ) = (π/2, 0)
为中心 - 即X轴用于演示的图表:
使用边界条件:
U = 0 -> φ = -π
U = 1 -> φ = +π
V = 1 -> θ = 0
V = 0 -> θ = π
我们可以在球体的局部空间中推导出所需的方程式和相应的方向向量r
:
假设球体具有旋转矩阵R
并且以c
为中心,只需使用lookAt
:
c + d * (R * r)
-(R * r)