天天看点

解除UVW贴图的疑惑

by:nowpaper

——开始——

我们经常在网页或者模型文件夹内看到下面这样的贴图,这种贴图是为了节省程序运算空间提高效率,如果能读取1张贴图就搞定一个模型,就尽量不会读取多个贴图来浪费空间和效率。

有很多朋友有这样的疑惑,这样的贴图是怎么贴上的,我们下面就会以一个实例解决这个问题。笔者所用方式是最简单直观的3ds,没有使用令人眼花缭乱的CG级模型,目的是给对此技术不了解的朋友参看,因此效果并不太理想,如果您是老手,那么不建议您继续阅读:)

我们就用上次的怪物作例子,

(本贴内的图象都是直接从屏幕截获,没有做特殊处理,效果不好,请谅解.)

<a href="http://blog.51cto.com/attachment/201111/173035143.jpg" target="_blank"></a>

——了解一下——

编辑贴图,您需要了解一些3D模型和贴图的基本知识(不了解也没什么关系,顺便看看也没有坏处)

1.在3D的世界里,单体模型的可见面数一定要尽量少,不然产生的计算将会是非常恐怖(至少程序设计师一致都这么说)。

2.3D模型以三角面为基本单位,所有东西都是由三角面拼出来的,因此,制作的模型如果最初不考虑这个问题,可能导出的模型有问题,这就是为什么我在上一次,把先box变成三角面组的原因。

3.贴图信息不是记录在三角面上,而是纪录在顶点上。

4.贴图文件类型最好是tga,它很方便,带有通道——虽然相比之下我更喜欢用jpg,但是也不得不说tga是个国际标准。

5.贴图图片的宽高是 2 的n次方 X 2 的n次方,最好是正方形 这样有助于程序加载和运算。

6.其他……请阅读技术文章。

那么好吧,我们的目的是通过这部分,解决您对UVW贴图的疑惑,让我们先看看最终的效果,以及贴图:

不得不承认这是一个很粗糙的贴图效果,请继续往下阅读。

——认识Unwrap UVW——

先认识一下Unwrap UVW编辑器,该编辑器(工具)是3DMAX软件的内置编辑器,主要用于贴图编辑,您可以选择好想编辑的物体之后,在编辑器选项栏内选择启动它。如图:

<a href="http://blog.51cto.com/attachment/201111/173103105.jpg" target="_blank"></a>

我们看到了需要编辑的物体挂上了Unwrap UVW编辑器,那么,让我们看看他的能力。

<a href="http://blog.51cto.com/attachment/201111/173113257.jpg" target="_blank"></a>

Unwrap UVW可以使用子物体选择物体的面,就像上面所显示的这样。

这里只将用的上的加以说明,如果您需要更多更详细的说明,请参照Discreet公司发布的官方帮助。。。。

在以上的操作进行很顺利的情况下,请继续阅读,否则,笔者不建议您继续:)

现在点击Edit..,将会显示一个窗口名为Edit UVWs窗口,显示如下:

<a href="http://blog.51cto.com/attachment/201111/173124161.jpg" target="_blank"></a>

中间那个就是我们可爱的怪物,它已经影射到UVWmap网格上了,我们现在要做的事情是,将它拆成我们需要的样子(注:坐标有点问题,但无伤大雅)

先了解一下基本的拆分功能,笔者不建议您手动拆分,并强烈建议您使用功能,选择Mapping-&gt;Flatten Mapping,怪物已经被自动拆成下面的样子(我的天)

<a href="http://blog.51cto.com/attachment/201111/173138919.jpg" target="_blank"></a>

拆的很碎,可怜的怪物已经面目全非了,这样可不行……别紧张,这里只是展示一下它的功能,真正有用的是以下功能:

选择Mapping-&gt;Normal Mapping,这时有多个选项,下面将展示功能的最终效果

Back/Front Mapping

<a href="http://blog.51cto.com/attachment/201111/173152840.jpg" target="_blank"></a>

Left/Right Mapping

<a href="http://blog.51cto.com/attachment/201111/173203409.jpg" target="_blank"></a>

Top/Bottom Mapping

<a href="http://blog.51cto.com/attachment/201111/173214591.jpg" target="_blank"></a>

好了,先参观到这里,其他的请自行演试,上面的几种已经足够我们用的了:P。

——现在开始——

在经过综合考虑之后,还是先把面数最多的面部搞定,再弄其他的部位,需要在编辑器子物体选项下,选择怪物的面部,(如果您找不到如何开启Unwrap UVW的子物体,请参见"认识Unwrap UVW"),注明:从一半开始做可以更加方便的配置贴图和减少容量,前提是您的模型是对称的。

<a href="http://blog.51cto.com/attachment/201111/173225757.jpg" target="_blank"></a>

然后在编辑器窗口内(Edit UVWs)选择Mapping-&gt;Normal Mapping使用Left/Right Mapping整理选择的面,最终是这样的:

<a href="http://blog.51cto.com/attachment/201111/173235356.jpg" target="_blank"></a>

现在我们在Edit UVWs窗口中把拆分的头放到一边,如上图所示,选择头上剩下的物件——“角”,随便您怎么选中,当然最方便的方法是在模型上选子物体。。好了,执行下图操作。得到“角”分开的上下2个片部分

<a href="http://blog.51cto.com/attachment/201111/173245863.jpg" target="_blank"></a>

一般情况下,“角”的纹理并不复杂,而且很重复,我们现在考虑将这个“角”的2部分合成一个整体,来保证他们的贴图接缝很完美,于是在Edit UVWs工具内调整点的贴图位置(UVW),关于点的操作您可以稍加尝试即可熟练掌握,这里就不多说了。

最终,得到这样2个片重合的结果。

<a href="http://blog.51cto.com/attachment/201111/173256795.jpg" target="_blank"></a>

如果您在拼接过程中有很多点点干扰您的操作,可以使用鼠标右键菜单中Freeze Selected把暂时用不上的点锁定,这样他们就不能干扰您了,需要的时候按UnFreeze All解放他们。如下图:

<a href="http://blog.51cto.com/attachment/201111/173309914.jpg" target="_blank"></a>

弯弯曲曲的角制作贴图太麻烦,还是拉直了好做贴图:

<a href="http://blog.51cto.com/attachment/201111/173319842.jpg" target="_blank"></a>

现在就是是身体了,在编辑器中选中我们的身体,错了,是怪物的身体:D

下面操作之后,您会看到怪物身体拆分成了前后2个部分(片),这样就很容易制作贴图

那么好,经过简单的调整,成为了右图样子,但是我们不能这样拿出手,因为还需要调整一下:

<a href="http://blog.51cto.com/attachment/201111/173346222.jpg" target="_blank"></a>

您可能对中间空出那么多感到不理解,事实上,大多情况下,模型是需要反工修改(例如加一件武器),如果您在一开始就把贴图排的很满,那么,到时候您不得不从新调整UVW贴图坐标,而且最麻烦的是贴图也要大改。我们这时留出为以后扩展用的空间是一个很好的习惯。事实上,这个模型并不复杂(废话)。

Ok!基本上完成了,我们把屏幕拍下来放到PhotoShop / Painter里面进行处理(Print Screen SysRq给屏幕拍照放入剪切内存,当然我是这么做的,有没有更好的方法?),调动您的各种纹理资源,按照纹路拼接或者勾画贴图,必要的时候,需要一些滤镜支持,这就看您的创意了,以下是笔者借用网上公开的《魔兽世界》的纹理而制作的一个贴图,

在Edit UVWs内按照下面选择Pick Texture,可以让贴图显示在窗口内,然后进行进一步调整贴图坐标点,这是一个很有趣的过程,因为距离成功不再遥远。

<a href="http://blog.51cto.com/attachment/201111/173415819.jpg" target="_blank"></a>

贴出来的结果就是这样子:

<a href="http://blog.51cto.com/attachment/201111/173430225.jpg" target="_blank"></a>

但是有些部分不算协调,让我们从新调整细节,您可以多次调整,直到您或您的老板满意为止:

<a href="http://blog.51cto.com/attachment/201111/173441852.jpg" target="_blank"></a>

最终效果:

<a href="http://blog.51cto.com/attachment/201111/173455750.gif" target="_blank"></a>

——终结——

我们在上面提过,必要的时候将物体拆分制作更容易(有提过吗?),正如你将看到下面一个模型,如果直接调整贴图,您将承受3D空间感的最大挑战,但如果是把它拆分组装,那么,一切就变得容易的多。(这是一个03年的作品)

<a href="http://blog.51cto.com/attachment/201111/173507895.jpg" target="_blank"></a>

贴图如下:

<a href="http://blog.51cto.com/attachment/201111/173517783.gif" target="_blank"></a>

这里为止,是以低面模型为制作的教程,那是因为HightPoly人头的贴图教程网上很多,如果您需要了解一下高面片数的贴图方式,可以通过下面的截图说明得到有关的启示。

——来点别的——

首先,为人头配置一个UVW Mapping编辑器,并调整Cylindri或者Spheric的编辑方式,当然,这两种方法您可以任选1种,但是结果却是完全不同。

<a href="http://blog.51cto.com/attachment/201111/173530904.jpg" target="_blank"></a>

上面是使用Cylindri的贴图方式,即圆柱方法。这时我们为头像选择Unwrap UVW修改器,看看是什么效果:

Cylindri 

<a href="http://blog.51cto.com/attachment/201111/173542578.jpg" target="_blank"></a>

Spheric

<a href="http://blog.51cto.com/attachment/201111/173551868.jpg" target="_blank"></a>

我们在Edit UVWs窗口中可以很清楚的看到,人头(骷髅)已经被“扒”成了一个面,虽然这种情况在现实中并不多见(难道你见过吗?),但是被“扒下”的皮确实是这个样子。

请不要晕倒,使用上面提到的方法转入PhotoShop/Paint里画贴图吧,可以保证您在贴上的时候是您画的效果。如果您有Paint3D那么则不需要这么麻烦,Paint3D这个软件会帮助您做好“扒皮”。

另外,我们还可以通过插件来实现,以下是一款插件Texporter的生成效果

<a href="http://blog.51cto.com/attachment/201111/173607941.jpg" target="_blank"></a>

如果您需要这个插件,您可以找我要: P

现在到了结束的时候,如果您在这里解除了UVWMap的疑惑,那么我的目的就达到了,如果您有什么意见或者好的想法欢迎互相交流。

本文转自nowpaper 51CTO博客,原文链接:http://blog.51cto.com/nowpaper/712637

继续阅读