第四章 贴图的基本原理


  在游戏制作中,贴图起到了无比重要的角色。前面大家学习了模型的制作,在模型上我们了解了游戏的Low polygon的制作模式下很多细节无法通过模型来展示,如:光的运用、质感的传达、体积的再现等。但是要在游戏中传递给玩家真实的气氛,我们不得不要把注意力拉回到贴图的表现上。那么究竟在游戏中贴图制作上有什么样的规律?有哪些限制以及具体要求?这一章中,我们将具体深入地剖析游戏贴图制作中的奥秘。

  学习过MAX我们都了解3D模型中的纹理实质上可以具体地划分为“贴图”与“材质”两个概念。我们在MAXMaterial Editor编辑器的Map面板下的各种属性包括漫反射、反光、折射、凹凸等均属于材质。而贴图则是嵌入材质的位图。也就是我们在模型上所要呈现出来的图像。

  在游戏纹理的制作中我们不得不多考虑很多新的问题。因为比起影视制作中高分辨率图像制作纹理,在游戏中如果想达到一些纹理的属性效果(如折射、反射、凹凸等),有时候我们不得不将更多的精力投入到贴图本身的处理上。

  在游戏的制作中,我们更多的是要利用贴图自身的效果来反映材质的属性变化。由于游戏引擎的原因,之前很多游戏开发,引擎曾有开放过“自发光、凹凸、半透明”等少量属性。而随着引擎的不断发展与机器硬件的不断升级,今后的游戏开发逐渐会开放更多的材质属性。

  当然作为一名出色的美术制作人来说,我们需要有这个能力,通过自己的手工制作来完成所有属性变化,将其绘于一张贴图上。也就是说,在高精度制作中经常出现的复合纹理中,也许会用到很多的参数来控制一张普通的贴图。而这些参数变化对于我们游戏制作的时候,更多的是需要靠美术通过手绘或图像修改到贴图自身上,来完成最终的效果。也就是说,我们要通过一张贴图来反映出物体的体积感、质感、光感等基本特性。如图4-1影视中所使用到的贴图,由于凹凸效果高光效果均由其他属性来控制,因此对于贴图来说,看起来很简单,没有过多的内容。而在图4-2中,我们看到的是游戏中的贴图效果。所有凹凸变化光的效果以及质感的体现都实实在在地反映到了贴图上。

001.jpg

4-1

002.jpg

4-2

在游戏设计中,极大地依赖贴图来建立场景的细节和真实感。最重要的就是要求制作人要把自己的艺术潜能发挥出来。游戏的实时渲染限制了电脑技术的发挥,因此我们会把更多的精力都投入到贴图自身的处理上,也就要求制作人在制作贴图的时候能根据具体情况的需要找到有创造性的解决方法来进行补偿。以尽可能少地避免失真。因此,重复利用、拼接较低的分辨率的贴图等方式便成为制作贴图中的主流。

在我们制作贴图前,要对我们制作的贴图进行一下整体形态的规划。因此要首先要了解你所制作的贴图的尺寸以及其分辨率。

4.1  游戏贴图的尺寸及分辨率

这里所说的尺寸,实际上又可以用分辨率这个概念来解释。主要是两个方面:第一,游戏整体画面的分辨率,也就是玩家所看到的画面效果,这部分主要侧重于程序的后期宏观调控;第二,游戏制作贴图的分辨率选择,这个同样也是直观地反映给玩家,但是主要侧重于美术的前期制作。这里我们主要了解的是贴图的分辨率问题。

通常在创作游戏艺术时,要习惯于使用2的倍数。通常我们所使用的贴图分辨率为:

32×32

64×32

64×64

128×64

128×128

256×128

256×256

512×256

512×512

1024×1024

这些贴图尺寸的长、宽比例较规则。2的幂次贴图纹理尺寸也被越来越多的操作平台接受和支持。

那么究竟什么是分辨率呢?我们来看大卫的这张油画《马拉之死》的色彩构成的变化过程(如图4-3、图4-4、图4-5所示)。

003.jpg

4-3

004.jpg

4-4

005.jpg

4-5

我们上色彩构成课的时候,老师会让我们把一些绘画作品,或者一些实际景物进行色彩的提炼。这里我们对大卫的油画《马拉之死》(如图4-5)进行提炼,首先我们尽可能少地使用色块将这幅世界名画再现出来(如图4-3)。虽然我们一时无法辨认其形态,但我们缩小图像的大小,或者将你的眼睛与画面距离拉开时,你会依稀地辨认出《马拉之死》的基本形态。在图4-3的基础上,我们将每个方格都进行4份的分割。这样我们所看到的画面效果更加清晰了(如图4-4所示),也许我们不必拉开距离已经能够感觉出《马拉之死》的基本风貌。此时我们便提高了图4-3的清晰度(也就是画面的分辨率)。这就是分辨率的基本原理,越细划分画面的格子,再现出来的画面效果就越详细、越清晰、越准确。

换个方式理解,我们在一个小画板上描绘一个森林与在一面墙上描绘一个同样的森林来说。自然是我在墙上画的时候可以将森林中更多的细节描绘进去。而在小画板上,只能点到为止。

这也正是在游戏贴图制作中,我们经常要注意的一个问题——分辨率的统一。游戏是一个整体,因此画面也要要求统一。为了要能使玩家能感受到游戏的逼真、视觉的连贯、思维的延续。就必须将画面统一起来。对于贴图而言,除了前面讲过的色彩、明度的统一外,其分辨率的统一,同样是非常重要。比如地面与墙面由于这些地方玩家是随时可能靠近的。也就是说,也许玩家会看得很仔细。因此,特别要注意其分辨率的统一(如图4-6所示)。

006.jpg

4-6

如果不注意分辨率的统一,从视觉上便会给玩家带来非常不舒服的感觉(如图4-7所示)。

007.jpg

4-7

 

对于分辨率的要求,也不一定非要面面俱到地将所有的地方都统一起来,因为我们还要考虑制作的效率。我们反过来站在玩家的角度可以考虑一下,因为我要走近这个区域,所以能看清楚近景的细节,但如果有些地方我走不到,看不清楚细节,但我又能看到贴图。此时,我要解决的问题可以变得简单些,不一定非要让玩家走不到,看不清楚的地方也不一定非要统一其分辨率,只要站在玩家的角度看上去合理、舒服即可。

 

4.2  游戏贴图的输出格式

对于贴图的格式来说,其重要性不亚于贴图的表面真实性。在游戏制作中,针对引擎的需要,不同格式的贴图起着不同的作用。常见的贴图格式有*.bmp*.jpg*.tga*.png*.dds等。其中*.bmp为普通位图格式。*.jpg为可压缩位图格式。*.tga*.png均为可带通道的图像格式。*.dds为特殊格式的代表,支持特定的显卡并且带有压缩性能。

在贴图的制作中,Photoshop起到了不可替代的作用。对于图像的两大制作软件来说Painter更多的是为艺术家的表现而服务。而Photoshop则更多的是给制作人员提供更多的图片修改的工具。对于贴图的制作,我们国内几乎都是使用Photoshop来完成的,曾经在国外也有人使用Painter来制作完成贴图,然而对于游戏的制作来说,效果与效率是并行的。虽然艺术的确是游戏美术的根,但失去了效率,游戏做出来早已过时,也就失去了游戏开发的根本意义。

下面具体介绍一下Photoshop在贴图制作中的应用。

4.3  贴图尺寸大小的修改

无论是在开始阶段,还是最终的输出,我们都可能随时对图像的大小进行修饰。虽然这个过程很简单,但是却很重要。因为图像的输出直接影响到后面程序的运行是否正常。前面提到图像的尺寸也就是其分辨率大小。我们改变尺寸的大小也可以说是改变分辨率的大小。

编辑分辨率,我们可以在Photoshop中选择Image/Image Size(图像/图像大小)打开图像大小对话窗口(如图4-8所示)。

008.jpg

4-8

在【图像大小】窗口中,我们看到宽度与高度设置参数的位置。这里有按【像素】与【百分比】来设置宽度与高度的参数。我们一般按“像素”比例来控制参数设置。可以按前面讲过的2的幂次填写参数比例。在窗口下面的【分辨率】设置中,我们一般以默认的72像素/英寸设置便可。此外,对于比例的重新调整与否,我们可以选择下面的约束比例或者取消前面的勾选,我们可以自由地控制整体宽与高的比例(如图4-9所示)。

009.jpg

4-9

对于比例的缩放,一定要注意比例缩放时的损失问题。一旦图像缩小后,精度信息就会丢失。比如把512*512的图像修改成64*64的图像,那么图像就损失了很多像素点。此时图像变得模糊,为了尽可能地避免这一损失。可以使用锐化滤镜作以补偿。在Photoshop中选择【滤镜】|【锐化】|USM锐化】命令,打开【USM锐化】控制面板。调节其参数,使画面尽可能保持清晰状态(如图4-10所示)。

010.jpg

4-10

我们把原始图像、缩小后的图像与USM锐化过的图像对比一下可以发现,锐化过的图像虽然损失了一些像素,但是依旧保存了原始图像的风貌(如图4-11所示)。

011.jpg

4-11

虽然我们可以使用【USM锐化】对损失的图像进行弥补,但是损失是无法完全弥补回来的。因此,这就需要我们对所制作的贴图的精度进行至少高一级的备份。比如,在制作的时候如果我们使用128*128的贴图,但是在制作的时候我们保存的版本至少是256*256甚至更高。一般情况下,我们在制作贴图的时候习惯用来备份的分辨率是1024*1024,这样今后调整的空间会更大。

4.4  贴图凹凸效果的展示

游戏中的凹凸起伏变化不是像在CG制作中那么简单,通过模型自身推拉出基本的起伏。在CG制作中,有些表面贴图使用的凹凸纹理贴图,在大多数的游戏开发中目前我们还不能直接使用凹凸纹理效果,更多的是利用贴图自身绘制的凹凸变化,来使玩家在感官上产生一种错觉。达到一种相对的起伏变化。

如图4-12所示,在游戏中,这个道具是用在中远景中的。我们通过很少的几个多边形面组成了这样一个具有中国特色的横鼓。但由于面数少,画面肯定空洞,因此,在贴图的制作中,要尽可能地去丰富,尽量弥补由模型造成的单一。在贴图中鼓身周围的装饰以及扣环均在贴图中完成其凹凸起伏的变化也都是通过贴图自身的变化而形成的。

012.jpg

4-12

 

 

Photoshop中制作凹凸效果的方法很多,具体的制作方式我们在后面的学习中逐步给大家通过示例来演示,详细说明。

 

4.5  贴图Alpha通道

在游戏的世界中,我们真实的再现生活中的场景是美术人义不容辞的责任。客观地反映事物本质的特性是真实再现事物的前提。Alpha通道可以为我们提供表现事物更自然、更逼真的途径。

利用Alpha通道我们可以表现透明效果、半透明效果、凹凸效果、高光、反射、置换、自发光、光线追踪、遮罩等。

由于引擎的限制,对于前面所提到的一些效果,并非都能实现,但随着技术的不断提高,所有效果的实现指日可待。目前我们常常用到的主要是透空效果。

这里我们举几个Alpha常用的例子来说明Alpha通道的作用。

如图4-13中,我们所看到的透空的灯笼、透空的走廊扶手、透空的椅子靠背、透空的树叶、半透明的橱窗。都是通过Alpha的制作而形成的效果。

013.jpg

4-13

 

在游戏制作中,由于多边形面数的严格限制。因此,要弥补由于模型带来的不足,这里利用Alpha贴图来替代真实的模型效果。

前面在讲到树叶制作的时候,我们曾经提到过利用Alpha贴图来制作树冠。在制作中,经常会出现一些多余的像素(如图4-14所示)。

014.jpg

4-14

 

产生这种像素的原因究竟何在?我们具体来分析一下。

首先,我们要理解Alpha贴图的形成。不管是本质贴图还是Alpha贴图,在游戏中,我们使用的是同一张,也就是前面提到过的*.tga*.png格式。在Photoshop中,我们利用图层与通道面板合成我们所需要的*.tga*.png格式。也就是说,利用通道中的黑白灰的关系来限制图层中图像的隐藏与显示(如图4-15所示)。

015.jpg

4-15

 

由于我们的主题物色调偏重,因此如果周围的环境与主色调反差过大,则会造成最终显示不出来[l1] ,经过Alpha过的贴图中物体周围会出现非常明显的像素边。如图4-16中如果贴图中的物体是深色,而背景是白色,反差则很明显,因而在最终显示出来的透空树枝边缘不可避免地出现了白色的边缘。而相反,我们若用黑色背景来衬托色彩比较重的树枝的话,效果则会很好。

016.jpg

4-16

 

因此,如果要使画面物体,尽可能完整且没有明显边缘,就需要使制作的背景与物体边缘色彩保持一致或尽可能接近。比如,上面的树干,我们甚至可以使用深棕色来铺垫,这样更容易使得画面色调保持一致。

对于通道的过滤程度,程序方面可以进行调节加以弥补,可以通过调整参数使边缘收缩。但这种方式并不提倡,很容易破坏主体物自身的形象。

 

4.6  无缝贴图

在游戏的制作中,特别是室外场景或室内地面场景以及大面积类同的空缺场景中,经常会使用到无缝贴图这一贴图技术。具体方法,我们将在下一次“自然场景贴图”的实例中为大家具体分析与讲解。

 

4.7  法线量贴图

一些游戏,为了追求更逼真的视觉效果,采用法线映射(normal mapping)方式进行贴图。这里我简单介绍一下,今后我们将用更多的篇幅来重点介绍这一贴图制作方法。

就这一方法,简单地概括,是通过高精度模型导出我们所需要的凹凸起伏的贴图形态,然后再应用到低精度模型上,给人营造出一种真实的假象。制作流程简图如图4-17所示。

017.jpg

4-17

4.8  小结

 

通过本章的学习,大家要初步了解3D技术制作中的贴图实现原理及游戏开发中贴图的具体要求。为后面实际贴图操作积攒基本的理论尝试。在制作中,出色的贴图一般是制作人的创造力与自身修养的综合体现,但大体方式类同。前面给大家介绍的是一些贴图的基本理论。如果想更好地利用贴图制造幻象,就需要通过大量的实际操作来总结经验。在后面的章节中,我们将用更多的实际案例来给大家进行分析。

 

4.9  思考与练习

 

1)配合色彩构成的课程,完成像素作业练习。绘制清晰的美术作品,在完成后,以中、低两种不同分辨率完成相同绘画作品的色彩构成色块概括作品。

2)在8:5的画纸上以色块的方式完成两幅风景或景物写生。同时注意色彩整体的冷暖关系。