4.3.烘培贴图
高低精度的模型都准备停当,还等什么,就差贴图了。对于展开UVs,你有很多工具可以选择:UVLayout、Unfold 3D、Pelt Mapping 等等。我试用过其中的 Headus UVlayout 和 Unfold,虽然更智能、效果可能更好,但还是觉得 Maya 用起来更顺手。
UVs展开的步骤在此就省略,因为据我所知很多人根本就不用Maya做UV贴图,所以就不白费力气了。
有个小技巧可以在展开UVs时避免变形:切割模型的时候,略微缩小切割范围(比如手臂和腿,取它们中间那段);另外,根据高分辨率模型来打断UVshell(比如靴子做一个shell,腿再做一个shell)
UV完成后准备烘培法线贴图和其它需要的贴图。
我使用Maya自带的 Transfer Maps 来完成这个任务(类似于3dsmax的 render to texture)
下面用靴子来举例:
——将靴子的高低精度版本同时导入Maya,确保两者重叠对齐。
——打开 Transfer Maps 对话框(Lighting 布局/菜单 Rendering/Shading->Transfer maps)

——Target Meshes 里点击 add selected,选择低多边形版本;在 Source Meshes 中点击并选择高分辨率版本。如上图所示。(如果你没有指定 Source Meshes 的话,Maya 会默认对场景所有物体进行采样)
——Target Meshes 的 Display 选项中选择 Envelope。

——这将创建一个可编辑的 Envelope 包络网格,类似于低多边形模型的复制品,用来查看与 Source Meshes 的包裹情况,可以通过 Search envelope 滑杆来调节大小。如果想要得到好的效果,你需要让包络网格完全包裹住高分辨率模型(如下图右1所示)

——如果缩放造成的差距太大的话烘培也会出错,因此需要在包与不包之间找一个平衡点,基本上达到下图的程度就ok了。

——进一步调整包络网格的点/边/面,把高分辨率模型露出来的那部分完全包进去。

——然后选择你想要烘培的贴图,我选了法线贴图。(如果你机器好的话也可以烘培 ambient occlusion 环境闭塞贴图,我的那台太慢了,为了赶时间只好用 MentalRay 烘培带有法线贴图的低多边形模型,速度快了很多,效果也勉强能接受)

当然,还要选择保存路径,设置文件格式、贴图尺寸等细节参数。注意 Search Method 要设为 Inside Envelope Only。
——现在点击 Bake 按钮开始烘培吧。
——需要注意一点,在点 Bake 按钮前先保存场景文件。因为渲染完成后 Maya 会清空包络,而你可能还会用到它(尤其是费了很大劲才把高分辨率模型包好的情况),如果渲染效果不好,你还能返回重新调整。所以还是存一下比较保险。
——如果效果不好的话,返回 transfer maps 对话框,重新调整参数设置(如果包络包好高分辨率模型,一般情况下不会有什么错误。要是你懒得调包络的话,也可以选择 "inside then outside" 或 "closest to envelope" 模式,在某些情况下它们还是能发挥一些作用的,在结构比较复杂很难包好的地方也能派上用场)。
3ds Max 的 Render to texture 处理方法与上面类似
——选择低多边形网格,rendering->render to texture
——打开 projection mapping 贴图映射
——按 Pick 选择高分辨率模型
——接下来 Max 会生成一个比较夸张的包络网格
——选择 projection 修改器
——进入 cage 自物体,点击 Reset,包络网格将会与低多边形模型对齐。
——和Maya一样可以调整包络的大小
——和Maya一样包好高分辨率模型
——调整完毕后,选择低多边形模型,在 Render to texture 对话框中点击 render
——如果贴图效果不佳,返回重新调整包络网格
接下来我来介绍省时省力的利用法线贴图、低多边形模型和 Mental Ray 来渲染 occlusion 闭塞贴图的方法。(虽然效果不如直接用高分辨率模型来的好,但是会快很多)
比如下面是一个完成后的带有法线贴图的低多边形模型(我拿靴子举个例子,你可以用这种方法一次完成整个角色)

你就是Paul Tosca?