计算任意网格的平面UV坐标

Mic*_* IV 7 3d uv-mapping

我有从2d形状生成三角形网格的代码.因为在大多数情况下这些形状在表面上具有不均匀的顶点分布,所以我产生UV的问题,因此它不会导致纹理变形.任何人都可以建议一些文章,书籍,代码样本谈论平面网格上的紫外线计算技术?谢谢

Dir*_*irk 1

好的,让我们看看我是否理解你的问题。

  • 您有一个带有顶点 (x_i,y_i,z_i) 的平面网格,因为网格是平面的,您可以找到导致坐标 z_i = 0 的旋转
  • 所以我假设你的网格也是带有顶点 (x_i,y_i) 的二维网格
  • 其次,您有两个 uv 坐标到网格嵌入平面中的点的映射。
  • 假设您有 uv 坐标 (0,0) 和 (1,1) 的映射,即 (0,0) -> (x_0, y_0) 和 (1,1) -> (x_1, y_1)
  • 然后,您可以将所有顶点平移 -1*(x_0, y_0),然后 (0,0) 映射到网格坐标系上的 (0,0),而 (1,1) 映射到新坐标 (x_1', y_1')

  • 因此,对于网格中具有新坐标 (x_i', y_i') 的任何顶点,相应的 uv 坐标为:(x_i' / x_1', y_i' / y_1')

希望有帮助。