Xav*_*ier 6 language-agnostic iphone android opengl-es
我正在尝试使用OpenGL创建一个3D游戏.我有一个非常基本的世界,现在正在研究一个角色.我想将纹理映射到椭圆形的头部.我该如何进行映射?我知道如何映射到平面.我想知道法线是否可以用来帮助,但我以前从未这样做过,当我搜索谷歌时我没有任何运气.
我打算以编程方式执行此操作,而不是使用Blender或Maya,如果这有任何区别的话.
从你的帖子中我猜你对几何学没问题?
\n\n对于一般情况下的自动映射,您的猜测是一个好主意 \xe2\x80\x94 从每个顶点开始并遵循其法线向外,直到您遇到定义良好的外部图元,然后从该图元向内复制纹理位置。
\n\n在这种情况下,我认为关键可能在于如何生成几何图形。如果您正在执行类似创建 8 个 16 点环的操作,有效地围绕外循环中的一个圆和内循环中的另一个圆进行迭代,那么您可以同时迭代 u 和 v 来获得映射。你会得到一些不规则大小的多边形,并且在极点处的映射变得很麻烦,但是脸部周围的区域效果很好。
\n\n如果您想要更相等大小的多边形以及在所有区域中的可靠映射,那么从过度细分的立方体开始(例如,每个表面 8x8 四边形的网格,而不是只有一个),并以任何有意义的方式映射纹理坐标。从立方体的网络角度思考。然后通过计算从中心到每个点的矢量并移动该点使其成为距中心的球体半径,将立方体变形为球体。最后,通过不同的缩放不同的轴,将球体变形为椭圆形。
\n| 归档时间: |
|
| 查看次数: |
942 次 |
| 最近记录: |