6法线贴图各种生成方式

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1次世代游戏各类贴图详解“材质”用来指定物体的表面或数个面的特性,它决定这些平面在着色时的特性,如颜色,光亮程度,自发光度及不透明度等。制定在材质上的图形称为“贴图”。材质贴图(TextureMapping):一张平面图像(可以是数字化图像、小图标或点阵位图)会被贴到多边形上,通常把它想象成3D物件的壁纸,亦即将一张2D图纸糊到一个3D表面。在像Maya、3Dmax等三维软件中,材质和贴图主要用于描述对象表面的物质形态,构造真实世界中自然物质表面的视觉表象。不同的材质和贴图能够给人们带来不同的视觉感受,因此这是他们所营造客观事物真实效果的最有效手段之一。什么是次世代游戏贴图:次世代贴图是由法线贴图(Normalmap)、固有色贴图(DiffuseColor)、高光贴图(SpecularColor)、自发光贴图(Self—Illumination)、透明贴图(Transparency)的组合而成的一整套贴图。每个部份的详细解释说明如下。一、法线贴图(NormalNormalNormalNormalmapmapmapmap)法线贴图是可以应用到3D表面的特殊纹理,不同于以往的纹理只可以用于2D表面。作为凹凸纹理的扩展,它包括了每个像素的高度值,内含许多细节的表面信息,能够在平平无奇的物体上,创建出许多种特殊的立体外形。你可以把法线贴图想像成与原表面垂直的点,所有点组成另一个不同的表面。对于视觉效果而言,它的效率比原有的表面更高,若在特定位置上应用光源,可以生成精确的光照方向和反射。法线贴图是一种显示三维模型更多细节的重要方法,它解算了模型表面因为灯光而产生的细节。这是一种2维的效果,所以它不会改变模型的形状,但是它计算了轮廓线以内的极大的额外细节。在处理能力受限的情况下,这对实时游戏引擎是非常有用的,另外当你渲染动画受到时间限制时,它也是及其有效的解决办法。2图5-1(GAME798学员徐惠康在校作业)3图5-21、法线贴图形成原理1)模型面受光度的判断在绘图程序里一个模型平面的受光度如何来判断呢?如果以0-1的程度来算,0是最暗,1是最亮的话,两个向量长度是1的向量相乘的结果就决定了这个平面的亮度。所以当入光向量和模型上的平向夹角的小的话,表示这个模型面直接面对光源,所以会很亮,反之如果夹角大的话,表示模型面不直接面对光源,所以会比较暗,当然如果是背光的情形的话,两个向量相乘结果小于0,就会是全暗。4图5-35图5-42)法线贴图和受光度的关系法线贴图的作用就是把面上的法线方向利用贴图提供的信息来改变其方向,我们可以把贴图里的每一个像素都当作是模型上的一个平面,用RGB三个原色记录了每个像素的法线方向(x、y、z)值,自运算时先读了模型的法线方向之后,再用法线贴图上的RGB也就是x、y、z值算一次。图5-56在此,游戏贴图上的法线方向已经不再是传统定义中垂直于平面的法线了,这点请一定注意,不要弄混了。下图是由一张法线贴图上针对其中的一个像素的法线方向做的分析(这只是一个概念的说明,可能会和程序上实际的运算的数值和流程会有点偏差)。图5-6有些不了解这个原理的美术人员可能会试图在Photoshop里直接修改,事实上这几乎是不太可能的事,因为它并不是直观的彩色贴图,与其说它是贴图,不如说它是储存数据的数组。3)、法线贴图(Normalmap)的生成原理法线贴图的生成方法有两种,一个是通过三维软件的功能(Maya里是通过Surfacesampler,3DMax是通过Rendertotexture)把同一个模型的高低版本对在一起,然后把高模的细节生成法线贴图记录下来,另一个方法是通过Photoshop里NVIDIA提供的nvtools,把Bump贴图提供的高度信息,转成法线贴图。7图5-7在凹凸(Bump)贴图里,亮部(浅色)是代表比较高的位置,相对的暗部(深色)就比较低,就是利用这种高低关系来换算出每个像素位置的相对高度,然后针对这个高度关系所形成的曲面算出其相应位置的法线角度,进而转换成法线贴图。图5-8有一点有一点需要特别提醒的是,一旦生成了法线贴图,不但无法用手绘的方式去针对细节上做任何改变,也无法把法线贴图转回灰阶的凹凸贴图。2、法线贴图烘焙前的检查1)模型法线的方向过入射点垂直于镜面的直线叫做法线。对于立体表面而言,法线是有方向的:一般来说,由立体的内部指向外部的是法线的正方向,反过来的是法线负方向。8图5-9在Maya中法线又分为点法线与面法线。图5-10Maya中法线显示菜单为Display-Polygons-FaceNormals面法线、VertexNormals点法线。910图5-11在烘焙法线如果法线是反方向的,则烘焙出来将法线贴图贴到模型上将会是黑色,法线烘焙也是错误的。图5-12法线正常情况显示为绿色,但有时从3DMax导入到Maya中将会是黄色的,因为Maya与3DMax的法线贴图绿色通道是相反的。1112图5-13黄色法线是错误的法线显示,这时我们需要将法线纠正。点击菜单栏中的Normals-SettoFace将顶点法线设置为面法线,这时顶点法线将被分裂开。1314图5-14检查法线是烘焙前的重要步骤之一。不仅仅要对低模进行检查,高模也要对其进行检查。2)低模软硬边的设置Normals-SoftenEdge设置为软边、HardenEdge设置为硬边。图5-15SoftenEdge设置软边,当两个面之间的夹角小于平滑角度,那这两个边为软边。软边的法线是这个面周围面的平均法线。HardenEdge设置为硬边,当两个面之间的夹角大于平滑角度,那这两个边为更边。硬边的法线将被用于和这条边相临的顶点的面上。15图5-16将模型转换为Edge(边模式)后,选择需要设置的边,点击SoftenEdge设置为软边、HardenEdge设置为硬边命令,对模型进行软硬边的设置。图5-17163、法线贴图烘焙方法1)Maya法线烘焙方法【1】首先确认低模与高模是相互重合的。然后检查模型法线与软硬边的设置。17图5-1818【2】在Rendering(渲染模块)下点击Lighting/Shading-TransferMaps命令,弹出如下窗口图5-19TargetMeshes设置低模。AddSelected添加被选择物体;RemoveSelected移除被选择物体。SourceMeshes设置高模。19OutputMaps选择烘焙贴图方式。【3】设置低模烘焙时的包裹框。在TargetMeshes对话框里,将Display选择第二项Envelope,模型上会出现一红色包裹框,这时我们可以像编辑多边形一样的去编辑模型。这时的改变包裹框不会影响到原模型,只是改变了低模烘焙的范围。但是这个包裹框尽量紧贴高模,这样烘焙出来的贴图才会更加精准。图5-2020图5-21调节完包裹框后,将Display改为Mesh。红色包裹框将消失。【4】选择Normal(法线)烘焙。并设置相应属性。2122图5-22【5】点击Bake开始烘焙贴图。图5-23(Maya法线贴图)23图5-24(模型贴法结效果图)2)3DMax法线烘焙方法【1】选中低模,执行Rendering-RenderToTerture。或者直接按下键盘上的0键。弹出如图所示的对话框。24图5-252526图5-26【2】打开抗锯齿,操作如下图所示。图5-27【3】识取高模,点击Pick,弹出如图所示对话框,选中模型点击Add添加高模。如图所示27图5-28这时的模型会出一个蓝色边框的包裹框,这个包裹框和在Maya中的作用是一样的。28图5-29这个包裹框他会以同等比例放大以包裹整个高模。如果模型比较复杂,这时包裹框就会计算错误,以至于包裹框很乱,这时我们就要进行手动调整。点击右边工具栏中的Cage工具29栏。如下图所示图5-30点击Reset重置包裹框,这时蓝色边框会紧贴着低模。Amout、Percent调节包裹框大小。这个蓝色边框也可以在模型上直接进行点、面的操作。【4】添加法线烘焙贴图。在Output对话框中,点击Add添加贴图。30图5-31【5】面板的相应属性的基本设置。31图5-32【6】点击Render进行烘焙贴图。32图5-33(Max法线效果)333)xNormal法线烘焙方法【1】将高模、低模各导出一个OBJ文件。打开xNormal软件。图5-34【2】添加高低模型。在操作区域里点击右键,单击Addmeshes选择模型文件。34图5-35【3】单击第三项Bakingoptions设置贴图类型。设置面板基本属性。图5-3635注意:点击Normalmap后面的(图5-37),弹出如下对话框。图5-38其中选择Y+为烘焙Maya的法线贴图。Y-为烘焙3DMax法线贴图。【4】点击GenerateMaps进行贴图的烘焙。36图5-39(xNormal烘焙法线效果图)xNormal软边烘焙效果很好,但是硬边烘焙有时会有黑面、接缝等问题,没有Maya、3DMax硬边烘焙效果好。374)Mudbox法线贴图烘焙方法【1】将高低模型导入到Mudbox软件中,点击菜单栏Maps-ExtractTestureMaps-NewOperation打开烘焙贴图对话框。图5-40【2】点选NormalMap法线贴图38图5-41【3】添加高低模型。选中要添加的模型点击AddSelected添加。39图5-42【4】设置面板的基本属性。40图5-43点击Extract进行贴图的烘焙。5)Zbrush法线贴图烘焙方法【1】Zbrush烘焙法线与其他软件有些不同,他只能是自身级别的低模识取高模,不像在其他软件中低模与高模是两个分开的物体。这样省去了我们拓扑低模的工作,但这样需要我们在建模初期就对模型进行UV的拆分与摆放。然后导入ZB中进行雕刻。41图5-44【2】将模型降低至低级别,在Tool面板下UVMap中设置UV尺寸大小。42图5-45【3】在Tool面板下NormalMap下点击CreateNormalMap进行法线烘焙。图5-46【4】这时NormalMap的左上角区域会出现一个法线贴图。再次在NormalMap属性栏下点击CloneNM将法线贴图复制到Texture中。这时打开Texture便能看到一张法线贴图。43图5-47【5】观察上图可以发现,法线贴图是上下相反的,这时我们要点击(图5-48)将贴图进行上下反转,得到一张正确的法线贴图。这时点击Export进行贴图的输出保存。44图5-49(Zbrush烘焙法线效果图)45

1 / 45
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功