一般情况下,动画网格直接接受纹理贴图没有什么大碍。但是对于用 subdivision emulation 技术创建的平滑多边形网格的纹理,要完全控制或者生成动画,就要用到复制纹理的方法。原因是当纹理坐标被指定给一个平滑物体时,默认情况下 maya 优先接受纹理贴图,而不是平滑功能。
maya 假定:大多数情况下,需要的是直接把未平滑的网格直接与平滑的多边形物体绑定,这样就避免了处理大量多边形时的性能的降低和复杂的皮肤问题。在进行动画和平滑处理以前,纹理坐标信息已经被接受,这样就避免了形状改变时,纹理在网格上的游移。
但是,这也意味着:纹理坐标只是为低精度网格而创建,而不能精确表达实际的纹理情形。这里我们要做的就是复制一个可以接受所有纹理信息的平滑图形。一旦纹理坐标建立以后,就可以容易的从复制物体上把它们传递到实际的平滑表面上去,而不会在动画中出现游移。第一步,创建一个纹理参照物体。选择 smoothed mesh 并用 edit-%26gt;duplicate 工具复制出一个物体,把复制出的物体沿 x 轴移开一段距离,以免与原来的混淆。
然后,选择 texture projection method ,因为头的最重要的部分是前面,后面和侧面,这里我们选 cylindrical projection 工具。( edit polygons-%26gt; textures-%26gt; cylindrical mapping )。
当使用 cylindrical 贴图方式的时候,最好选上 “seam crrect” 选项,这样效果更好些。为了看起来清楚,这里我用了棋盘格贴图。
上面是未修正的,下面是修正以后的。
但是我们看到,修正以后效果仍然不是很令人满意,我们还需要手动调节一下 uv 坐标。打开结构视窗( panels-%26gt; panel-%26gt; texture view )。
subdivision emulation下的纹理处理首先,我们看到, uv 超出了物体的实际边界。用 image -%26gt; display image 会看的更清楚。在网格上单击右键,弹出窗口中选择 uv ,选取不正确的 uv 坐标轴 ...
用移动工具移动到合适的位置(热键 w )。
也可以调节 uv 坐标重叠的区域。可以用手动调整,也可以用 maya 的 relax 工具( edit polygons -%26gt; texture -%26gt; relax uvs )。上面是调整前,下面是调整后(耳朵)。
有些很难选取的地方(例如嘴的内侧),可能需要附加的或者完全分离的材质。这就要用到 maya 的独立选取工具 isolate selection tool (show-%26gt; isolate select-%26gt; view selected )。
建议在调节完成以后,删除物体纹理的历史记录,因为如果不删除,可能偶尔出现所作的调整会丢失的现象。
2d 纹理贴图制作好以后,纹理文件可以被链接到任何 channel 上。过程是创建材质(例如: create-%26gt; materials-%26gt; lambert ),然后单击 checkerboard 按钮,从 2d 纹理菜单中选取一个文件,把新创建的纹理文件与材质链接在一起。
最后一步,用 polygons-%26gt; transfer 工具把 uv 坐标从参照物传送到最初的平滑网格中去,如下图所示:
由于这样只是传送了贴图信息,而没有传递材质信息。选取脸,在合适的材质上单击右键,从下拉菜单中选 assign material to selected 。这样就完成了。
(完)
评论