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

时间:2012-01-22 12:09:20

标签: 3d uv-mapping

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

1 个答案:

答案 0 :(得分:1)

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

  • 你有一个带顶点的平面网格(x_i,y_i,z_i),因为网格是平面的,你可以找到一个旋转,它导致坐标为z_i = 0
  • 所以我假设您的网格也是2D顶点(x_i,y_i)
  • 其次,您将两个uv坐标映射到嵌入网格的平面中的点。
  • 让我们假设您有uv-coords(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)映射到a新协调(x_1',y_1')

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

希望有所帮助。