当前位置:文档之家› 法线贴图

法线贴图

法线贴图
法线贴图

我们都知道,一个三维场景的画面的好坏,百分之四十取决于模型,百分之六十取决于贴图,可见贴图在画面中所占的重要性。在这里我将列举一些贴图,并且初步阐述其概念,理解原理的基础上制作贴图,也就顺手多了。

我在这里主要列举几种UNITY3D中常用的贴图,与大家分享,希望对大家有帮助。

01

首先不得不说的是漫反射贴图:

漫反射贴图diffuse map

漫反射贴图在游戏中表现出物体表面的反射和表面颜色。换句话说,它可以表现出物体被光照射到而显出的颜色和强度。我们通过颜色和明暗来绘制一幅漫反射贴图,在这张贴图中,墙的砖缝中因为吸收了比较多的光线,所以比较暗,而墙砖的表面因为反射比较强,所以吸收的光线比较少。上面的这张图可以看出砖块本身是灰色的,而砖块之间的裂缝几乎是黑色的。

刨去那些杂糅的东西,我们只谈明显的,漫反射贴图表现了什么?列举一下,物体的固有色以及纹理,贴图上的光影。前面的固有色和纹理我们很容易理解,至于后面的光影,我们再绘制漫反射贴图的时候需要区别对待,比如我们做一堵墙,每一块砖都是用模型做出来的,那么我们就

没有必要绘制砖缝,因为这个可以通过打灯光来实现。可是我们如果用模型只做了一面墙,上面的砖块是用贴图来实现,那么就得绘制出砖缝了。从美术的角度,砖缝出了事一条单独的材质带外,还有就是砖缝也是承接投影的,所以在漫反射图上,绘制出投影也是很有必要的,如下图:

没有什么物体能够反射出跟照到它身上相同强度的光。因此,让你的漫反射贴图暗一些是一个不错的想法。通常,光滑的面只有很少的光会散射,所以你的漫反射贴图可以亮一些。

漫反射贴图应用到材质中去是直接通过DiffuseMap的。再命名规范上它通常是再文件的末尾加上“_d”来标记它是漫反射贴图。

凹凸贴图Bump maps

凸凹贴图可以给贴图增加立体感。它其实并不能改变模型的形状,而是通过影响模型表面的影子来达到凸凹效果的。再游戏中有两种不同类型的凸凹贴图,法线贴图(normalmap)和高度贴图(highmap)。

Normal maps法线贴图

法线贴图定义了一个表面的倾斜度或者法线。换一种说法,他们改变了我们所看到的表面的倾斜度。

法线贴图把空间坐标的参数(X,Y,Z)记录在像素中(R,G,B),上面的范例图就是这个意思。

有两种制作法线贴图的方法:

1.从三维的模型渲染出一张法线贴图(用高模跟低模重叠在一起,把高模上的细节烘焙到低模的UV上,这里需要低模有一个不能重叠的UV)

2.转换一张高度贴图成为一个法线贴图。(是用NVIDIA的PS插件来转换一张图成为法线贴图)Height maps高度贴图

什么是HeightMap呢?所谓高度图实际上就是一个2D数组。创建地形为什么需要高度图呢?可以这样考虑,地形实际上就是一系列高度不同的网格而已,这样数组中每个元素的索引值刚好可以用来定位不同的网格(x,y),而所储存的值就是网格的高度(z)。

我们在这里叙述高度图,其实也是为了更好的绘制法线贴图,很多情况下我们的法线贴图只能在已有的漫反射贴图作为素材进行绘制,这样就是需要由一个HeightMap转换成法线贴图的一个过程,明白了这个原理,做起来也就可以更好的驾驭其效果。

高度贴图是一种黑白的图像,它通过像素来定义模型表面的高度。越亮的地方它的高度就越高,画面越白的地方越高,越黑的地方越低,灰色的在中间,从而表现不同的地形。

当然在UNITY中也是有HightMap出现的,比如在Terrain菜单中,就有导入和导出HightMap 的命令。

高度贴图通常是在图形处理软件中绘制的。他们通常没有必要渲染这些,再DOOM3游戏中高度贴图是被转换成法线贴图来使用的。使用高度贴图仅仅是为了适应简单的工作流程。高度贴图通常通过“Heightmap”函数来调用到3D软件中去的,我们通常再文件名后面加一个"_h"来标示它。

Normal maps vs. height maps

法线贴图和高度贴图

一般来说,Normal Map来自于Height Map。具体生成的方法如下:

把Height Map的每个像素和它上面的一个像素相减,得到一个高度差,作为该点法线的x值;把Height Map的每个像素和它右边的一个像素相减,得到一个高度差,作为该点法线的y值;取1作为该点法线的z值。

推导过程如下:

x方向,每个像素和它下面的一个像素相减,得到向量<1, 0, hb - ha>,其中ha是该像素的高度值,hb是下一行的高度值;

y方向,每个像素和它左边的一个像素相减,得到向量<0, 1, hc - ha>,其中ha是该像素的高度值,hb是左一列的高度值;

两个向量Cross,得到

简单来说,就是取两个方向的切线向量,对它们做Cross得到该点的法线向量。

还有另外一种做法,是根据每个象素四边的点计算,而该点象素本身不参与计算。

没有试过,不知道哪种好一些。

而且我觉得这种计算只适合于单块的HeightMap、NormalMap,像是DOOM3中的NormalMap 就无法由HeightMap计算出来了。所以最好还是在美工建模的时候同时生成NormalMap和HeightMap而不是利用HeightMap生成NormalMap。

DOOM3游戏引擎可以把法线贴图和高度贴图合成在一张凸凹贴图上。

通常我们绘制一张具有足够细节的高度贴图要比建立一个足够细节的模型然后渲染成相应的法线贴图要实际的多。

法线和高度的凸凹贴图可以通过Addnormals函数来合并到一种材质中。

毫无疑问,高度贴图大多数游戏引擎中出现的不多。他们只是给电脑一种方法来计算曲面法线当使用动态灯光的时候。

这说明实际上,一张高度贴图被转换成一张法线贴图,以此可以计算出相邻两块不同高度的位置之间的倾斜面。高度贴图永远不能像法线贴图这样具有足够的细节,这是被肯定的。

很明显只有灰度的高度贴图并不能很好的表现应该有的细节,因为它是黑白的,RGB颜色就会遭到浪费,并且因此你只能只用256层级的强度。

相比较来言法线贴图的每一个图像通道都可以利用到,显而易见,法线贴图能够更好的来表现凸凹。

Specular maps高光贴图

什么是高光贴图?

高光贴图是用来表现当光线照射到模型表面时,其表面属性的.(如金属和皮肤、布、塑料反射不同量的光)从而区分不同材质.

高光贴图再引擎中表现镜面反射和物体表面的高光颜色。

材质的反光程度就越强。(强弱度度是指,如果将这张Specularmap去色成为黑白图,图上越偏向RGB0,0,0,的部分高光越弱,越偏向RGB255,255,255的部分高光越强.)

我们建立高光贴图的时候,我们使用solid value来表现普通表面的反射,而暗的地方则会给人一种侵蚀风化的反射效果。(你头脑中要有很清晰的物件不同材质之间高光强弱的关系:高光最强的是那个部分,最弱的是那个部分,处在中间级别的是哪些部分.一般来说:金属的高光>塑料>木头>

皮肤>不料,但是这个只是一个大致的分类,不要把它作为高光的指导.有时,你处理的物件可能是如上图一样,绝大部分都是同一类型材质的,比如布料,这时你也要小心的去分辨不同材料之间的高光强度的区别.切记,在这个阶段一定要保持清晰的头脑,不要急着去添加那些细节.在大的强弱关系还没有决定之前,就去添加那些细节会影响你的判断,而最后得到一张层次不清晰很“花”的高光.很多时候,我们容易范这样的毛病,就是将物件的高光处理的太过单一.)

上面的贴图有个问题,砖的表面与砖缝相比将会有比较少的反光,但是砖缝的位置其实应该几乎是没有反光的。(确定好整体高光的强弱之后,就开始在高光上叠加细节:比如金属划痕,金属倒角高光,锈渍周围的裸金属亮点,油渍,灰尘等.这时,你会发现,如果你在Diffusemap的绘制过程中,保留了纹理,划痕或以上提到过的细节的图层,你只需要将Diffusemap中的相应图层拖曳到Specularmap中,然后根据这些细节应该反映出来的高光强度调节就可以了.So,良好的图层管理习惯是非常必要的.)

颜色再高光贴图中将会用来定义高光的颜色,组成砖的材料应该是一些沙子,他们将会反射出一些微笑的具有质感的光,这些在上面的例子中已经展示了出来。(为了丰富高光贴图,我们有很多方法:做局部高光的细微变化,添加纹理(这个纹理要和材质本身的纹理区分开),叠加彩色图层(谨慎用))

高光贴图是通过Specularmap函数调用到引擎中的,通常我们再贴图的后面加一个"_s"来区别它。

凸凹贴图可以通过高光贴图来改进成相当漂亮的贴图。(要记住的是,单单凭借高光贴图是无法充分的表现材质特性的,只有Didffuse,Normal,和Specular三张配合才能充分的表现材质特性.)

在UNITY中,高光贴图通常放在漫反射贴图的透明通道里,我们是用相关的SHANDER就可以达到高光的效果。

AO贴图

Ambient Occlusiont简称AO贴图,中文一般叫做环境阻塞贴图。是一种目前次时代游戏中常用的贴图技术,很多朋友将其与全局光烘焙贴图混淆,其实二者本质是完全不同的。

首先,我们从简单的AO贴图的算法来讲:

AO贴图的计算是不受任何光线影响的,仅仅计算物体间的距离,并根据距离产生一个8位的通道。如下图所示,计算球形物体的AO贴图的时候,程序使每个像素,根据物体的法线,发射出一条光,这个光碰触到物体的时候,就会产生反馈,比如球右下方的一些像素锁发射的光,碰触到了旁边的政法提,产生反馈,标记这里附近有物体,就呈现黑色。、

而球上方的像素所发射的光,没有碰触到任何物体,因此标记为白色。

简单了解算法后,大家就明白,全局光的烘焙师模拟GI(全局光)所呈现的阴影效果,而AO 贴图时模拟模型的各个面之间的距离。二者性质是完全不一样的。

我举例简单对比AO贴图和GI阴影贴图的区别。

根据这个低模,右边计算出的AO贴图的黑白关系,是根据物体模型距离产生的,不存在任何光源效果的影响,边缘部分等比较密集的结构,正确的产生了深色,强化了模型结构,在游戏引擎中,与其他通道贴图混合,可以提升游戏的效果。

右边的是全局光烘焙贴图的效果,是用MAX的天光计算结果进行烘焙,其阴影效果是模拟自然光线下的模型光影关系,在有结构接近的区域(比如裤袋、袖口)由于GI得光线跟踪计算会使其弱化,符合自然界光线效果,但是不是游戏所需要的效果。

在unity中,我们有两个地方可以调整AO,一个是在光照贴图渲染器中,有一个调整AO的参数,这个是确实渲染了一层AO。还有一个就是通过摄影机特效,有一个屏幕空间环境阻塞的特

效screen speace ambient occlusion(SSAO).这两个都可以实现部分的AO效果,有兴趣的朋友可以自己尝试一下。

CUBEMAP

Cube map技术说到底就是用一个虚拟的立方体(cube)包围住物体,眼睛到物体某处的向量eyevec 经过反射(以该处的法线为对称轴),反射向量reflectvec射到立方体上,就在该立方体上获得一个纹素了(见下图)。明显,我们需要一个类似天空盒般的6张纹理贴在这个虚拟的立方体上。按CUBE MAPPING原意,就是一种enviroment map,因此把周围场景渲染到这6张纹理里是“正统”的。也就是每次渲染时,都作一次离线渲染,分别在每个矩形中心放置相机“拍下”场景,用FBO渲染到纹理,然后把这张纹理作为一个cube map对象的六纹理之一。这样即使是动态之物也能被映射到物体表面了(虽然缺点是不能映射物体自身的任何部分)。

CUBEMAP的制作方法:

https://www.doczj.com/doc/ef1346777.html,/content.php?action=tutorial&name=cubemaps

unity3d的官网上有一段代码,叫做Camera.RenderToCubemap

讲的是怎样把我们的场景烘焙成cubemap,里面附有代码,有兴趣的可以在SCRIPT帮助文件中搜索我上一行提到的关键词。

LIGHTMAP

什么是烘焙? 简单地说, 就是把物体光照的明暗信息保存到纹理上, 实时绘制时不再进行光照计算, 而是采用预先生成的光照纹理(lightmap)来表示明暗效果. 那么, 这样有什么意义呢?

好处:

由于省去了光照计算, 可以提高绘制速度

对于一些过度复杂的光照(如光线追踪, 辐射度, AO等算法), 实时计算不太现实. 如果预先计算好保存到纹理上, 这样无疑可以大大提高模型的光影效果

保存下来的lightmap还可以进行二次处理, 如做一下模糊, 让阴影边缘更加柔和

当然, 缺点也是有的:

模型额外多了一层纹理, 这样相当于增加了资源的管理成本(异步装载, 版本控制, 文件体积等). 当然, 也可以选择把明暗信息写回原纹理, 但这样限制比较多, 如纹理坐标范围, 物体实例个数...

模型需要隔外一层可以展开到一张纹理平面的UV(范围只能是[0,1], 不能重合). 如果原模型本身就是这样, 可以结省掉. 但对于大多数模型来说, 可能会采用WRAP/MIRROR寻址, 这只能再做一层, 再说不能强制每个模型只用一张纹理吧? 所以, lightmap的UV需要美术多做一层, 程序展开算法这里不提及....

静态的光影效果与对动态的光影没法很好的结合. 如果光照方向改变了的话, 静态光影效果是无法进行变换的. 而且对于静态的阴影, 没法直接影响到动态的模型. 这一点, 反而影响了真实度肯定不只这几点,但我暂时只想到这几点

那么怎么生成lightmap呢?

最直接的办法: 光线追踪....(原理想想很简单, 按照物体定律来就可以了)

但是光线追踪这东西......就算用来离线生成我都嫌慢-_-

下面说的这个是利用GPU进行计算的, 跟实时光照没什么两样:

原理:

想想实时渲染的顶点变换流程: pos * WVP之后, 顶点坐标就变换到屏幕空间了[-1, 1]

如果VertexShader里直接把纹理坐标做为变换结果输出(注意从[0,1]变换到[-1,1]), 那么相当于直接变换到了纹理坐标系, 这时在PixelShader里还是像原来那样计算光照, 输出的结果就可以拿来做lightmap了

静态模型的Lightmap(光照贴图)与Vertex-Lighting(顶点光照)之比较

通常有个误解就是,Vertex-Lighting是一种不费的静态模型打光手段,因此应该被作为提升地图运行效率和减少文件尺寸的手段。这种观点,在这两方面其实都有问题Lightmap使用平展开的一套UV,如同普通皮肤贴图所需的。Lightmap的贴图大小可以灵活设置,比如64x64。这种方

式提供了每像素的光照数据Vertex-Lighting使用的数据结构,包含每个顶点所受光照的亮度和色彩信息。

该数据结构消耗特定量的内存,这个量是由模型的顶点数量决定的,不能随意改变在多数情况下,静态模型应该设成使用Lightmap,因为这可以产生最好的视觉效果,最好的运行效率,而且比Vertex-Lighting消耗更少的内存Lightmap和Vertex-Lighting相比较,具有如下优点:- Lightmap 可以减少CPU和GPU的占用- Lightmap让CPU需要计算的光照和物体间的互动更少- Lightmap 不需要在GPU的多重pass中被渲染- Lightmap pass被整合进Emissive(自发光)pass中,因此可以缩短渲染时间- Lightmap可以表现交错覆盖于静态模型三角面上的复杂的每像素光照,然而Vertex-Lighting只能表现顶点到顶点之间线形的渐变- 使用Lightmap的静态模型,可以通过优化使用更少的三角形,获得额外的效率提升。

为使用Vertex-Lighting而制作的模型,通常需要较高的细分度,获得更多的顶点来改善顶点之间的光照过渡,然而这种做法的副作用是提升了模型的三角形数量并影响运行效率- 静态模型上的Lightmap可以设置为使用很小的分辨率,比如16x16或32x32,来减少内存开支。这对于远离游戏中心区域的静态模型来说,非常有用,这同样也适合受光很均匀的模型。

Vertex-Lighting就不具有这种优化的便利,它总是消耗同样数量的内存来存放模型全部顶点的数据结构- Lightmap可以通过调整UV的布局,来进行优化以提供尽可能好的光照质量。比如,有一个球形岩石,可以将它的底部的三角形的UV尺寸做得很小,从而让这部分在整个Lightmap 的UV上面只占据很小一块,这样,对于顶部和侧面来说,就获得了更大的贴图面积于是有更精细的光照效果。Vertex-Lighting的精度总是对应于顶点数,而效果又受模型实际大小的影响(就是说缩小了看还可以的模型,放大比如一百倍,由于顶点不能改变,所以效果也变糙一百倍,而Lightmap因为可以灵活设置精度不存在这个问题),并且不能被优化如果静态模型的三角形和顶点数量很少的话,那使用Vertex-Lighting可能会比使用Lightmap占用更少的内存,然而,使用Lightmap绝对是看起来更好的,效率也更高的。

使用Lightmap让LD可以优化光照的质量和内存的占用所以Lightmap显然是比Vertex-Lighting 更好的选择举个例子:比如使用UT3这游戏的静态模型HU_Deco_Pipes.SM.Mesh.S_HU_Deco_Pipes_SM_Pipe01该模型有2555个三角形和2393个顶点如果在场景中放置此模型的420个实例,并且都使用Vertex-Lighting,那么总共消耗11MB内存如果在场景中放置此模型的420个实例,并且都使用32x32的Lightmap,那么总共消耗850kb 内存如果在场景中放置此模型的420个实例,并且都使用64x64的Lightmap,那么总共消耗3.3MB 内存占用内存的量,也会在地图文件的尺寸上有所表现这个例子中的一部分实例,其所用的Lightmap的精度,可以设到128x128或者更高以便获得最佳的光照效果,而仍然使用相比Vertex-Lighting来说更少的内存。并且使用Lightmap的版本,要比Vertex-Lighting版本在渲染上快8-10个百分点。

Mipmap和detailmap

首先从MIPMAP的原理说起,它是把一张贴图按照2的倍数进行缩小。直到1X1。把缩小的图都存储起来。在渲染时,根据一个像素离眼睛为之的距离,来判断从一个合适的图层中取出texel 颜色赋值给像素。在D3D和OGL都有相对应的API控制接口。

透过它的工作原理我们可以发现,硬件总是根据眼睛到目标的距离,来玄奇最适合当前屏幕像素分辨率的图层。假设一张32768x32768的mipmap贴图,当前屏幕分辨率为1024*1024。眼睛距离物体比较近时,mipmap最大也只可能从1024*1024的Mipmap图层选取texel。再次,当使用三线性过滤(trilinear)时,最大也只能访问2048*2048的图层选取texel,来和1024*1024图层中的像素进行线性插值。

detailMAP

顾名思义,就是细节的贴图,我这里有一个例子,

使用前:

使用后:

使用的着色器:

原理上不用赘述,其实就是图层的叠加与混合。在这里有几个关键词,一个是Detail的Tiling值,一个是这个Detailmap需要在导入的时候设置为Mipmap,里面的参数大家可以试着调一下,至于Mipmap的原理,已经在上面介绍了。

游戏贴图技术入门-法线贴图

第一部分:法线贴图的制作示例:岩石的法线贴图制作什么叫做法线贴图,简单的说就是将一个高边模型上的细节信息在另一个低边模型上面显示出来,这就叫做法线贴图。高边模型和低边模型必须是同一个模型,只区别在于面数和细节的差异。为什么要给低边模型渲染法线贴图,原因就是高边模型的面数过高,当然细节也很丰富。在游戏里面显示的话,会占非常大的内存,相应的对电脑的要求也会相应的高;然而低边模型是用到游戏里面的,并且它所占的内存比起高边模型来说,非常小,但是细节和质感不比高边模型的好,所以为了有更高质量的游戏,但又占内存小的游戏,我们自然就需要法线贴图来为我们的游戏增加更多细节和质感。法线贴图一般都是用在次时代游戏里面,网络游戏还是非常少,因为还关键的是用什么引擎。只要支持法线贴图的,那么它的游戏里面也会用上法线这效果。下面我以岩石的法线贴图来做个例子:首先创建一个低边模型的岩石(需要展开UV),然后再复制一个出来,通过ZB或在MAX里面制作出它的高边模型(不需要展开UV),如图: 有了高模和低模后,我们就可以给它创建法线贴图了,在渲法线之前,需要一些设置,下面开始法线制作。选择低模,然后点击对齐工具,将低模和高模对齐到一块,如图:

下面开始设置,法线属性,按0快捷键,进入渲染纹理面板,如图

先选择低模。点击进入卷展栏,然后点选,拾取高模,设置如图: 这时候你会发现在修改面板里增加了一个修改命令,并且模型也会表面也会出现一个蓝框,如图:

点击卷展栏,再点击,出来的对话框中,选择法线贴图,然后设置贴图大小,和将这两个打上勾 。设置如图: 设置完成,下面开始渲染法线。法线效果,如图:

用Maya和Zbrush制作次世代模型流程

大 众 文 艺 347 摘要:次世代,源自日语,即未来时代。这里的次世代,指还未广泛应用的先进的(技术)。游戏业为了应对越来越激烈的竞争,应用“次世代”技术,使得游戏画面的精细效果向着超越电影的方向发展。随着次世代的技术的应用领域越来越广,其对行业人才的技能提出了更高的要求,对人才数量的需求也更多了。因此,学习次世代技术就显得很热门。本文介绍了使用Maya和Zbrush制作次世代模型的从“中模”→“高模”→“拓扑游戏低模”→“uv制作”→“烘焙贴图”→“贴图制作”的基本流程以及制作中的要领,希望能和大家进行交流。 关键词:Maya;Zbrush;次世代;模型;流程 一、准备工作 首先要分析原画,对所塑造模型的形体特征要胸中有数,尤其是对于复杂的模型,制作前要思考模型制作的方法。分析好每一部分在进行颜色贴图和高光制作的时候是要做成什么样的效果,比如,布料、皮革等一些质感的表现,因为每块的质感和表现手法都不一样,制作之前先要有个大的思路,这样才能保证在制作的过程中一气呵成。 二、制作基础模型 基础模型又称中模,是用来在Zbrush中制作高模用的,可以用任何三维软件制作,我习惯用Maya制作,因为MAYA支持的面数较多,操作起来比较流畅。基础模型的制作要求:只建出大的形体,不需要细节;布线要简洁,避免多星线;布线要均匀,避免五边面;做好后,将模型根据结构切分为若干部分,这样导入Zbrush中可以得到最大程度的细分,切开的边要放在隐蔽的部位;模型拆分成几个部分时,先分大部分然后再拆分局部。这样做使雕刻更方便且模型更加有层次,细节更丰富。 三、高模的制作 对于复杂的模型,可以把模型拆分成几个部分来进行制作,先分大部分然后再局部拆分。这样做便于雕刻并能使模型更加有层次,细节更丰富。 将基本模型导入ZBrush,使用笔刷进行细节雕刻,在大型雕刻上,Inflat(膨胀笔刷)使用起来会得心应手;Clay(黏土笔刷),使用起来有做泥雕的感觉,而且在模型的硬边处理上效果较好。 拓扑低模 基本模型在Zbrush中雕刻完细节以后,产生的高模与原来的基本模型相比有了很多的凸凹,如果烘培了高模的法线贴图之后,贴在原来的平坦的基本模型上,效果就会大打折扣。因此,需要制作一个与高模的凹凸相匹配的低模。还有一个原因,我们在原先制作基本模型时,为了使布线均匀,多少会加入一些多余的线条,拓扑是将模型的布线重新整理的过程,因为有了雕刻出来的高模做参照,布线会更加合理。 首先在Zbrush中使用Zbrush的减面插件Decimation Master 进行优化,这个插件可以在保持模型细节的前提下将模型的面数从百万降到几十万,然后将几十万面数的模型导入到Maya中。在Maya中进行拓扑可以使用插件NEX,把高模拓扑成面少的低模。对于复杂的模型可以分阶段的一个部分一个部分的拓扑。先给高模一个深一点颜色的材质球,这样拓扑便于观察,然后选择NEX 工具中的FREEZE工具使模型不能被选择。最后点击QUAD-DRAW工具,并在QUAD DRAW OPTIONS栏中选择高模,然后开始拓扑简模。 四、编辑UV 编辑UV可以在Maya中进行,Maya的UV编辑器很方便,在编辑角色模型时要将UV缝合得尽量完整,避免出现太多接缝。并且要将UV的边界切在隐蔽的位置,比如后边,头顶等位置,这样避免了很多处理接缝的麻烦。在容易出现拉伸的地方,如鼻子等地方要仔细调整,否则会失去很多细节。完成以后根据各部位比例放置到0-1的空间内,点击UVSnapshot,导出UV快照作为绘制贴图参考。 五、烘培贴图 烘培Narmal Map和Ao Map。用Zbrush中的ZMAPER可以烘培出Narmal Map,效果很好,但是它不能烘培Ao Map。可以采用分段的形式导入MAYA烘焙,再拼起来。MAYA一次能支持100万左右三角面的模型烘培。 也可以使用烘培软件XNORMAL,在XNORMAL中导入高模,要选择平滑法线,不然烘培出来的贴图是硬边显示,再导入低模,最后设置一些选项,法线和AO设置好后,可以同时一起烘培,这样可以节约时间,与MAYA的烘培相比, XNORMAL就显得非常高效。 六、贴图绘制 首先我们在Photoshop里导入UV贴图,并且以UV图作为参照把大的色块先填充上去,然后在后面设置一个遮罩,方便以后局部选择,然后再导入Ao Map,放置在UV图的下面,并将融合方式设置为 正片叠底。在Ao Map的基础上进行color的制作,可以方便定位和节省很多的制作时间。导入Ao叠加后对比Ao Map的叠加前后,可以发现很多难处理的褶皱,面部纹理都出现了,省去了很多处理时间,如果觉得纹理还是不够多,再可以导入法线贴图,放在Ao Map的下面,同样选择融合方式为 正片叠底,最后再叠加一些纹理、花纹、图案等,使用痕迹,磨损、掉漆和划痕,再调整一下明暗面的对比,一张完整的贴图就制作出来了。最后再对整体的颜色进行调节,注意贴图的整体亮度和色彩要统一,不能出现有的局部过亮或过艳,因为最终的高光效果是用高光贴图来控制的。 七、结语 以上介绍的是标准流程,有时当时间紧迫时会使用快速流程即:拓扑游戏低模→uv制作→高模制作→烘焙贴图→贴图制作。学习次世代建模技术,除了要精通Maya的模型、渲染模块和Zbrush、photoshop以外,美术基础是决定专业发展深度的关键。另外,还要学习NUKE、mentalray、动画、特效和后期。这样将来发展的路才会越走越宽。 参考文献: [1]游艺网教育部. ZBrush+Maya全案塑造次世代游戏人物及机械 [M] 北京:清华大学出版社, 2011-5-1. [2]刘涛,Maya&ZBrush影视角色造型完美表现[M] 北京:电子工业出版社 , 2010-09-01. 用Maya和Zbrush制作次世代模型流程 吴小武 (连云港师范高等专科学校 江苏连云港 222000) 重话历史,续写时尚,推动节庆,激活商务,增值业态,链接旅游,实现浪漫情调、时尚态度、品质生活以及国际化理念的集成,使市民和外来者在多样性文化环境和精致生活的选择中,对江北、对老外滩情有独钟,爱之弥深。 参考文献: [1]陈宏伟.潮涌城北-近代宁波外滩研究[M].宁波:宁波出版社.2008 [2]杨立锋.宁波老外滩历史风貌及其发展[J].宁波广播电视大学学报.2005-03 [3]苏少敏.扬宁波外滩文化 建设甬城滨水核心游憩区[J].宁波通讯.2003-12 [4]徐建成.论宁波外滩的历史品质[J].中共宁波市委党校学报.2004-04[5]张利君.宁波外滩[J].宁波通讯.2009-10 综合学术论坛

凹凸贴图、法线贴图、置换贴图

凹凸贴图、法线贴图、置换贴图 Warband 的模型相对于1.011又前进了一步,现在大多的服装都加上了法线贴图,看起来细腻了很多而原先我们只能在墙壁、树皮上看到一点法线贴图的效果.... 所以下一轮的模型设计,这个元素是热点..... 先转这篇文章过来谈谈概念,二楼讲如何制作。 其实我本人对模型制作、3D之类完全外行,转这个只是想抛砖引玉,欢迎大家讨论,灌水顶贴就不必了。 首先我想说,对于凹凸贴图在计算机图形领域中的研究,最早开始于70年代末,至今已经有接近30年历史了。NormalMap只是一种目前很流行的凹凸贴图技术,而这里将会介绍一些目前游戏和在XBOX360和 PlayStation3这种新世代主机上将会运用的凹凸贴图技术。 BumpMapping 凹凸贴图 做过CG的朋友一定比 FXCarl还要更早的认识BumpMap。这种贴图是一种灰度图,用表面上灰度的变化来描述目标表面的凹凸,因此这种贴图是黑白的,如果节省空间的画,甚至可以把贴图的Alpha通道征用来用作Bump。值得注意的是,这种贴图表面上存储的东西是高度域--即每个点和原始表面的高度差,记住,每个点的颜色不是色彩,是高度,一个数值!因此,对这个贴图做任何的操作都会影响到这个物体3D的外观质感。不能凭感觉用事。 在游戏中,所使用的算法确切的说应该叫做fake bump mapping ,假凹凸贴图。因为在游戏中BumpMap并没有改变物体的表面而只是影响光照的结果,欺骗眼睛而已。最简单的做法是,直接把BumpMap叠加在已经渲染好的表面上,造成亮度上的扰动,从而让人以为是凹凸的--这个很容易理解,把一面白色的墙面有技巧的部分划成灰色就会变成蚀痕,这些诸位会比小的更擅长。而计算复杂度是基本加减法。这个所谓的 FakeBumpMapping 从Geforce2就开始硬件 支持,但是从来没有大范围的应用过。 不过有趣的是,BumpMap这个东西却从未过时,在后来的渲染算法中,其储存表面高度域的特 性仍然发挥着巨大的作用。我们后文再提 NormalMapping 法线贴图 NormalMapping在游戏领域中的实践是一个非常值得记住的时期--Geforce3上市,GPU概念出现,硬件可编程流水线的出现(Shaders),NormalMapping是一种凹凸贴图技术,它的另 外一个名字叫做Dot3 bump mapping。

3D游戏中法线贴图技术的应用

3D游戏中法线贴图技术的应用 /view-1 法线贴图的原理 一个表面的凹凸信息可以通过每个点的法线向量在RGB通道中记录并保存下来。使用贴图的时候根据记录的法线向量来实现视觉上凹凸效果。法线贴图的颜色看起来有些奇怪,这是法线贴图的RGB值取得并不是颜色,而是每个点的法线向量的三个分量,一个三维向量由X、Y、Z等3个分量组成,以这3个分量当作红绿蓝3个颜色的值存储。 2 法线贴图的应用以及存在的问题 使用法线贴图可以将高精度模型的细节转换为一张图,然后将其应用在低多边形的模型上,通过渲染以实现所要表现的细节,这大幅减少了实际需要计算的模型面数,加快了显示和渲染的速度。我们除了通过计算高精度模型的凹凸细节和低精度模型之间的差值来获取法线贴图外,还可以使用PHOTOSHOP软件,按照法线贴图的颜色来制作,但这种通过绘制的方法得到的法线贴图,并不准确,在游戏模型的制作中用的不多,所以得到法线贴图的最常用方式还是通过高精度模型与低精度模型的计算而得到的。 在使用法线贴图时,我们都知道视角接近水平时法线贴图的缺点很明显,法线贴图只是改变了的表面上的光照结果,并没有像置换贴图那样实际改变模型的形状,这给游戏模型的制作过程中带来的具体问题就是:在模型边缘处有着明显的接缝,接缝的部分无法让模型产生所谓“真正”的细节。另一个方面,法线贴图也无法实现自身内部

的遮挡,不能够有效解决解决更大的凹凸情况,在表现平面上凹凸起伏较大的场景时效果不佳,在游戏制作中,它只能用在对遮挡关系不敏感、凹凸起伏不大的场景中。 3 法线贴图与视差贴图的关系 为了解决法线贴图弊端,在法线贴图的基础上出现了新的视差映射贴图技术。视差映射贴图在控制纹理的技术上有了进一步提高,打开它的阿尔法通道,你会看到在阿尔法通道中除了储存有与法线贴图相同的信息外,还有通过饱和度来记录表面凹凸高度信息的功能,这一点是法线贴图所不具备的。由于在阿尔法通道中记录有表面凹凸高度的信息,这样就可以实现一个表面前部的凹凸纹理能够遮蔽到后面的纹理,这样就具有更为符合实际情况的凹凸效果。视差贴图和法线贴图在原理上、使用方法上基本是一样的,我们可以把它理解为一种功能增强的法线贴图,视差贴图为游戏玩家提供了比法线贴图更好的视觉效果,而对于游戏美术制作人员来说,这种功能增强的法线贴图也能保证游戏模型真实性的情况下,大幅度降低模型的面数。 视差映射贴图作为虚拟3D领先的技术,其在游戏画面上视觉效果也已经达到了非常逼真的程度,但是视差映射贴图与法线贴图一样该变不了模型本身,这是他们技术的本质所决定的,这也是法线贴图、视差贴图的共有缺陷――游戏玩家的视角和平面的夹角接近于平行 的时候侧面看起来永远是平的。视差贴图比法线贴图的优点表现在,在相对视角会发生一定的变化时,尤其在入视角接近水平时,仍能获得不错的质量,图2中的对比可以看出,入视角接近水平时,左侧的

maya 法线定点着色

Maya的法线贴图应用(Normal Map) 2008-09-26 09:37 Maya的法线贴图应用(Normal Map) 在CgTalk网站评选的2004年CG大事TOP 10中, 第六件大事便是“法线贴图成为游戏行业主流”,CgTalk上对法线贴图描述如下: 法线贴图用于非交互3D渲染已不是什么新技术了,但游戏上的应用还是最近才出现的事。在 Doom 3 (id software)、Half Life 2 (Valve Software)、Halo 2(Microsoft)和 Thief 3:Deadly Shadows (Eidos Interactive)等04年的几款游戏大作中,法线贴图为实时交互领域带来了前所未有的真实体验,如图。 法线贴图是一种利用含有法线信息的纹理来制作低多边形模型的方法。凹凸贴图(Bump)与之有着相似的概念,但是法线贴图的优势在于即使在灯光位置和模型角度改变的情况下,依然可以得到正确的shading,从而为低多边形模型带来更多的细节效果。 凹凸贴图(Bump)通常使用单通道图像(灰度图像)来计算,而法线贴图使用多通道图像(RGB)来体现法线信息。凹凸贴图改变的是法线向量的大小,而法线贴图能同时改变法线向量的大小和方向。 下面我们介绍如何在MAYA中制作法线贴图。 如图,为同一个模型准备一个低模,一个高模。在高模的表面可以有很多细节。

将低模和高模放在相同的位置,然后在Rendering模块下执行Lighting/Shading | Transfer Maps,如图。

在弹出的窗口中,设置Target Meshes为低模,Source Meshes高模,分别在Outliner中选择相应的模型,使用Add Select按钮添加。之后单击Output Maps 标签下的Normal,即选择输出法线贴图。然后在下面设置贴图存储路径和名称,设置法线贴图的格式,这里我们选择FF格式。其他参数如图,最后单击最下面的Bake按钮,即可生成法线贴图了。注意法线贴图的存储路径和名称不要含中文,否则会出错。

法线贴图的创建和烘培

1.介绍 在这个教程中我将讲解一些烘培和创建法线贴图技术,这个技术现在使用非常普遍,特别是游戏制作中。 我将使用的软件 ZBrush2:可以从高模烘培法线贴图,虽然现在有ZBrush3.1可以使用,但是在烘培法线的功能上是和 2.0版本相同的,我将使用ZMapper插件来烘培贴图,这插件你可以从Pixologic站点免费下载。 3D studio max:我将使用这个程序制作低模和展UV,并且将低模以obj导出。Photoshop CS2:我将使用它创建和编辑烘培的法线贴图。 2.什么是法线贴图 法线贴图可以创建出比真正的模型更多几何体的假像,和置换贴图一样法线贴图并不能真的影响低模的几何网格。所以,如果我们的低模非常的简单和尖利,那么法线贴图将起不了作用。下图是一个高模平面模型和一个赋予了法线贴图低模平面模型的区别。 这个简单的例子显示了法线贴图是怎么作用的。 下图显示了法线贴图的通道构成

法线贴图的整体效果就在它的RGB通道,特别是在R和G通道,这两个通道往往定义了X和Y的烘培参数。如果在3Dmax或是其它3D软件(或是实时)的引擎中不能正常显示法线贴图,往往是因为引擎在解释R和G通道的错误造成的。这时你需要在烘培贴图之前交换两个通道(你也可以在Photoshp交换烘培后的法线贴图的通道) 我们将使用ZMapper来烘培法线贴图,这是一个免费的ZBrush插件有大量的预设参数供我们正确选择使用。 3.一个好的开始 在我们开始创建一个拥有大量细节的高模之前,为模型进行一些规划是非常好的主意,举例来说:如果模型有一些比较大元素象是大口袋,大块肌肉或是更大的皱痕我们就要增加一些多边形在低模。因为正如我前面所说法线贴图不会改变我们的低模,如果不为比较大的元素增加多边形,从某些摄象机角度看这些元素将看上去非常的平。这就是为什么我们要在雕刻高模之前规划模型。 而最好的办法是:在开始之前绘制详细的概念设计图,或者至少绘制一个简单的素描。在下图你可以看到,低模虽然只是一个很简单的几何体,但是已经拥有一些高模的特征。

Maya中AO贴图的应用方法

译者:今天想起来学习一下Ambient Occlusion(简称:AO贴图)然后在ZBTime上搜索了一下,下了个电子书,可是使用的软件是3Ds Max,然后我又输入关键字Maya AO 还是没有相关的内容。 最后我就用Google 搜maya ambient occlustion ,结果出来的第一个网站进去一看,感觉不错,那么我想了想为了方便大家和以后的学习者。我就把教程转过来,本人英文顶多中学,主要是看英汉字典翻译,所以有翻译的不对的地方,请指出。 这是一个在Maya 8中制作和烘培AO贴图的基础教程。有些步骤可能与较早的版本里的菜单名不同。大部分的东西在Maya中可能有很多不同的方法可以做到,但是这个方法很合理和快速很适合我。 1. 设置材质节点 首先打开hypershade窗口,使用鼠标中建将SurfaceShader节点从节点列表内拖入至工作区域。 - 点击"Create Maya Nodes"(下图中蓝色圈中部分)改变为Menta Ray节点列表 - 然后展开Textures栏,用鼠标中建将mib_amb_occlusion节点托至工作区。

这里都是废话了,简单的讲就是看下图... 把两个节点的OutValu属性和OutColor属性链接起来。 2. 设置场景- 为了得到更好效果的AO贴图,场景的环境色必须是白色。在大纲中选中渲染用的摄像机后Ctrl+A 在属性编辑器里将Environment栏的背景色滑条拖动到100%的白色。

- 废话太多精简为:在全局渲染属性窗口里将渲染器改为MentalRay,然后将multi-pixel filter改为Lanczos 方式

Trainz材质修改方法及法线贴图的简单制作方法

Trainz材质修改方法 修改材质需要的软件:Im Editor 一、Im Editor的调试 打开Im Editor得到如下界面: 我们在修改材质以前需要调整一个地方。点击File-sittings: 将General选项卡下的“Professional”mode勾上,使得软件支持修改材质。

二、材质类型的介绍及其修改 Trs里一共有种7材质:,onetex,gloss,reflect,notex,tbumptex, tbumpgloss,tbumpenv,TRS中运用最广泛的是前3种材质,后4种因为在trs中表现不明显,完全可以不使用。所以接下来会重点介绍前3种,当然了,后4种也会略提一下。。 1.notex notex是一种不带贴图的材质,仅适用于阴影(shadow)的纯黑模型,一般模 型并不需要,所以此处略过。 2.onetex onetex材质是TRS里应用非常广泛的一种材质,简而言之就是以颜色贴图 (diffuse map)作为纹理的一种材质。这种材质的优点是可以通过添加或者调整贴图的alpha通道来确定模型各个部分的透明度,当然当alpha通道为纯黑 的时候,那么模型的透明度最大而不显示,可以用作为拆模型的一种简单的 方法。 以SS9的贴图材质为例,点击右部object:0使其展开,点击Material得到以 下对话框。 红框:材质名称及材质种类 绿框:打勾为双面贴图,不打勾为单面贴图 橙框:控制贴图显示的基准色,通常为255,255,255 紫框:贴图关联面板,从上到下依次为颜色贴图,法线贴图,反射贴图 黄框:贴图的自然光反射颜色 接下来我们将会把材质改为onetex。

法线贴图技术在次世代游戏图像中的原理及应用周飞

Vol.9No.6 2012年6月 第9卷第6期 Journal of Hubei University of Economics(Humanities and Social Sciences) 湖北经济学院学报(人文社会科学版) Jun.2012一、引言 法线贴图技术作为次世代游戏图像技术的核心,为游戏软件用户提供了飞跃式的视觉体同时也为游戏开发商和三维艺术家提供了更多的自由空间。以往三维游戏的实际游戏画面受到硬件显示的限制,能呈现出来的多边形数量非常有限。在这种限制下,实时演算的游戏画面的细节表现力无法让人满意。当法线贴图技术引入游戏引擎之后,可以做到在多边形数量相对低下的模型上呈现出超高数量多边形模型所能表现出的细节,在没有给计算机硬件过多负荷的条件下,表现出惊人的效果。本文将深入浅出地剖析此技术的核心原理和应用方法注意事项的成因。 二、三维计算机图形中灯光的工作原理 在正式讲解法线贴图之前,对于灯光如何照亮三维模型的过程原理有一个基本了解是非常重要的,因为这是法线贴图工作原理的基础。灯光是如何工作的呢?我们是如何去区分屏幕上哪个像素应该是亮还是暗,以便于所有这些像素点集合在一起看上去好像是场景里面的物体被某种灯光照亮了呢?首先一点非常重要的是必须要去了解模型表面每一个点所指向的方向。模型表面某一点指向的方向我们把它称作改点的法线方向(normal ),从该点出发沿着这个方向作出的一条射线称作法线。可以想象它就是从这一点引出的一条线[1]。这条线跟这个点所在的平面是垂直的。在一个存在光的三维场景之中,从模型表面的一点引出一条线段指向光源的位置,这条线定义为光向量”(light vector )。那么以上定义了两条向量从这个点引出,它们分别是“法线”和“光向量”。通过测量这两个向量之间的夹角,就能知道光是如何照亮这一点的,如果夹角很小,那么可以得知这个点需要被照的比较亮一点。因为基本上就是比较接近直射。如果这个夹角很大,我们就知道这个点需要被照的暗一点,因为远离光源(假设只有一个光源)。 这就是基本光照原理。这个原理的核心算法公式就是: brightness =N dot L N 代表法线,L 代表光向量,Dot 是我们测量两个向量之 间关系的一个测量方法。代表“点积”(数量积)通用公式: |u||v|cos。 如果点积越大,说明夹角越小,则物理离光照的轴线越近,光照越强。 三、进入法线贴图 那么这种光照是如何应用到即时渲染的模型当中的呢?到现在,大部分即时渲染的游戏模型都运用“平滑浓淡处理”明暗法(Gouraud Shading [2])。这个处理法实际上是只对顶点处的点采用NdotL 的方程式进行明暗值的计算,而且其他的在顶点之间的像素采用线性填充。所以,如果我的多边形有一点是亮的,另一个相邻的点是暗的,那么他们之间的像素则呈现一种明暗渐变的调子。 这种做法是一种可以减轻计算机运算量的捷径。因为多边形上面只有一部分点进行了明暗值的精确计算,而且并非所有的。这可以对多边形表面的明暗分布进行快速的估算。这个方法很有效,但是它看上去远不如对每个像素进行明暗计算来的真实。 有时候用平滑浓淡处理可以得到想要的光照效果,但是其他时候,得到的效果不怎么样。如果模型中的三角形面很大,那么模型光照出来的效果看上去将会非常糟糕。那么只能通过添加多边形的数量来增加模型的细节,而这就受限制于游戏引擎的能力 [3]P 3 。解决这个问题的办法是什么呢?答案 是———全像素照明(Per-pixel lighting )(Geforce2以上的显卡都可以进行逐点照明计算)。使用这种方法,虽然模型很低,但是光照效果仍然很圆润平滑,因为对每个像素进行了光照计算。全像素照明(Per-pixel lighting )使用一张RGB 贴图,对需要的数据进行编码,用来将模型表面法线的数据记录在一张普通的贴图中。这个贴图包含了模型表面发现的数据,叫做法线贴图[4]P 6。红,绿,蓝通道,分别对应发现的x ,y ,z 轴向量值。 上文提到过,法线跟改点所在切面垂直。这其实并不是绝对的。当使用法线贴图的时候,可以让每一个像素上的法线指向所想要的方向。在上面的的图中我们可以看到蓝色的像素(R127,G127,B255)所代表的法线是垂直指出屏幕的。粉色的像素所代表的法线是往右边扭曲的,绿色像素代表的法线则是往上扭曲的。紫色像素代表的法线是往下扭曲的,深蓝色和绿色像素是往左扭曲的。可以让模型表面看上去好像又很多 法线贴图技术在次世代游戏图像中的原理及应用 周 飞 (湖北经济学院艺术学院,湖北武汉430205) 摘 要:次世代游戏的画面表现力之所有能产生一个巨大的飞跃,其重要原因之一是法线贴图技术的发明和应 用。本文从根本原理上阐释法线贴图技术的原理以及在次世代游戏图像当中的应用方法和注意事项。首先介绍了三维图形中灯光的工作原理和计算方法,然后剖析法线贴图的计算原理和方法,最后归纳了主要的法线贴图生成方法。 关键词:法线贴图;次世代三维游戏美术;全像素照明 40··

Maya教程:海龟渲染器(for maya)渲染烘焙流程

Maya教程:海龟渲染器(for maya)渲染烘焙流程 火星时代为大家带来海龟渲染器渲染烘焙教程,海龟渲染器专为Maya而生,在Maya2013、2014、2015版本中得以集成,Maya有了自己的光能传递属性的渲染器。下面就来为大家讲解海龟渲染器渲染烘焙流程。 说到海龟渲染器,其实最强大的地方不在于渲染,而是它能将渲染的结果很好的烘焙成贴图的方式贴回到场景的模型中,这样就可以去掉光照完全的以模型贴图的形式快速的在场景中进行交互,这也是许多游戏的解决方案。 首先看一下要想把你所渲染的结果烘焙成贴图需要注意到的地方: 1.你的场景里最好使用Maya自身的Lambert、Blinn等基础shader,除非有特殊的用途,例如场景中要有3s效果的皮肤类型的物体,否则最好只用Lambert、Blinn等基础shader,这样便于烘焙管理,也就是说不用考虑烘焙的结果能不能实现。 2.如果场景中必须用到皮肤材质等需要3s效果的,可以使用海龟自带的ilrBssrdfShader,如下图: 3.海龟渲染器兼容Maya大部分的shader和程序纹理,但是体积光,glow光等的灯光属性不支持,所以需要注意,在渲染之前最好找简单物体作测试,对于绝大多数Maya自身的shader 完全没有问题。 4.如果需要烘焙ao效果需要注意一定要用海龟自身的ao节点,不要使用mr的ao,mr的节点海龟一律不支持。如下图: 那么接下来看看海龟渲染器的渲染设置我们需要了解哪些: 首先是渲染精度,例如抗锯齿,贴图过滤值,反射折射的参数等等,如下图:

默认的是很低的精度用于预览 如果需要成品品质的渲染则要切换相关数值为如下图:

xNormal烘焙法线的教程

xNormal最大的优点就是不用显示出模型就烘焙,所以即使面数高到令3ds Max、Maya爆机的高模也可以导进去烘焙,而且非常适合角色的制作。首先我们要有个分好UV的低模(这里我用我以前做的皮衣做示范,做的不好大家别笑),当然这个低模已经和高模匹配好,可以是高模拓扑出来的模型,然后在zb里将模型细分值调到中间值,这样即保持高模细节上的起伏又能正常导入3ds Max或Maya(面数比较少)。(图01) 图01 需要注意的是,ZBrush显示的Polys面数实际要乘以2. 将这个“中模”导到3ds Max后开始调低模的封套,封套完成后在封套的下面给个Edit mesh修改命令(xNormal需要低模是Mesh物体),然后在点选封套将低模导出。(图02)

图02 选择xNormal支持的SBM格式,再勾选图中3个,分别导出低模的UV,封套,光滑组(事先要给低模一个光滑组),然后点导出,出现如图字就表示成功,如果字比较多说明你没选中封套导出或者封套在其他修改器下面或者是不是Mesh物体。OK后,将ZBrush里的高模用最高级导出为OBJ。(图03)

图03 打开xNormal加载高模,然后给高模一个光滑组(这个作用不是很明显)。选第一个是使用导出的光滑组,后两个是自带的光滑组,我们可以选择中间的,第三个你也可以自己试试。(图04)

图04 导入低模,然后是最重要的地方,勾选use cage使其封套生效。我之前烘焙有问题都是这个原因。(图05)

图05 模型都导入后接着是烘焙设置,首先设置xNormal,将绿通道设置为y-,不然是上下反的。AO的话将采样值设置为256我觉得是蛮好的,其他我不知道是怎么设置,还需高手指点。上面的抗锯齿在烘焙法线的时候开最高,烘ao时如果机器不是特别好建议还是1x,不然会渲很长时间且占用电脑速度。(图06、图07)

MAYA材质贴图教程

MAYA材质贴图教程 MAYA材质贴图在MAYA学习中占据很重要的地位,好的作品首先必须有精简,漂亮的模型,在有了模型后对模型渲染就接决定了作品最终的档次,因此MAYA材质贴图的掌握在MAYA学习中显得尤为重要,我们现在就来学习一个老外的贴图过程, 01翻译了好几天,英语读起来真是艰涩难懂!!! 现在终于和大家见面了,大家看了以后,认为好的帮忙顶一下,谢谢啦!!! 翻译教程挺有意思的,还能练英语!!!!一举多得!!!

02下面是我角色头部的UV坐标图。我们将用它来引导我们绘制纹理贴图。

03我将做一个3000*3000象素大小的纹理贴图 如果你仅仅是学习和练习,你实际上不需要这大的,1000*1000或 1500*1500之间是比较合适的,如果你确实没有很多细节的话。 这张贴图将包括 Color Map (颜色贴图)

Bump Map(凹凸贴图) Specular Map(高光贴图) Reflectivity(反射率贴图) Transparency(透明贴图) Translucence(半透明贴图) Diffuse(过度色贴图) 这些贴图我仅仅使用其中的一部份, 请记住实际上不需要绘制所有的这些贴图,这正好是我所使用的。 我将开始绘制凹凸贴图,因为通常情况下这是绘制其他贴图的基础, 现在如果你拥有一个数位板你可能会发现添加一些好看的细节是非常容易的, 否则就使用鼠标。我只有一只鼠标,所以画起来不是很容易并且花费许多时间,不过还能应付得过去, 现在打开photoshop 准备开始 虽然这个教程是面向初学者的,但是凹凸贴图实际上将不包括如何作画过程。 我已经想出一些方法绘制一张凹凸贴图是比较容易的, 虽然不是最好的方法,但是应该相当容易。请随我一起做!!!!

次世代游戏贴图的概念和制作.

导言: 本教程详细的介绍了次世代游戏贴图的概念,对实际生产中的一些制作要点进行了分析,对游戏制作者有很大的帮助。 下面教程开始 次世代贴图和传统贴图的比较 造成差别的主要原因有两点,一是由于图像技术的突破,二是贴图数量的提高。这两个因素使得次世代贴图在发挥上有了更大的空间。(图01)

图01 1、彩色贴图肩负多重责任,高光阴影、深度的三维效果都要同时通过贴图表现出来。 2、高光和阴影不会因光源方向的变化而改变。 3、贴图尺寸小,为了节省贴图,所以用四方连续贴图来贴满整个面墙,容易看出有重复,影响画面品质。 4、细节均匀,因为需要大量的四方连续的关系,所以不能有特别突出的细节。 5、整体的立体感较弱,传统贴图只能表现比较缓和的高光和阴影,太强调贴图本身的光影会对游戏场景里实际光源的打光效果产生干扰。(图02)

图02 1、除了彩色贴图之外,还有法线贴图(Normal map)、高光贴图(Specular map),有的还用凹凸贴图(Bump map),是几张贴图组合成的一套贴图。 2、高光和阴影可以随光源方向的变换而有相应不同的光影效果,有了法线贴图(Normal map)、高光贴图(Specular map),透过贴图上所提供的信息,即可以随着光源的方向的不同而做相应的光影效果运算。 3、高精度的贴图画面,贴图尺寸比较大,四方连续的次数少了,可以加入更多独特的细节。 4、很好的三维效果,通过法线贴图(Normal map)、高光贴图(Specular map)、凹凸贴图(Bump map)的组合可以产生很多微妙的立体细节变化。 5、丰富的贴图细节,以前因为贴图限制而无法深入的细节现在可以有进一步的发挥。 什么是次世代贴图 次世代贴图是由彩色贴图(Color map)、法线贴图(Normal map)、高光贴图(Specular map)、凹凸贴图(Bump map)的组合而成的一整套贴图。 每个部份所发挥的功能说明如下:(图03)

【Maya】NormalMap法线贴图制作

Maya环境中,通常使用三种贴图:2D贴图,3D贴图以及Env环境贴图。3D贴图是由Maya 内置的3D纹理节点生成,在这就不做讨论了,一般用于生成特殊的程序纹理;环境贴图与3D 贴图类似,所不同的是环境贴图无明确的空间范围,常作为场景中的环境特效构成;2D贴图是我们最常用的贴图方式,也就是导入平面图形格式到模型的材质属性,如漫反射,高光,反射等。 以效果表现来看,2D贴图又可分为材质贴图,凹凸贴图和置换贴图三种: 材质贴图SurfaceMaterial表现的是模型的纹理构成;凹凸贴图BumpMap以虚假的起伏效果来丰富模型表面;置换贴图DisplacementMap则改变模型的表面结构,形成真正意义上的凹凸效果。 NormalMap法线贴图,在Maya中属于BumpMap凹凸贴图计算起伏效果的方法之一(Bump,Normal),包括Tangent Space Normals(切线空间法线)和Object Space Normals(物体空间法线)两种表现方式。 构成图如下(仅个人观点,不作权威认证……): 动画常用Bump方式进行起伏效果的模拟,而游戏因为特殊的硬件要求,采用的是Normal法线贴图(图形硬件渲染总是要比软件渲染快得多)。Bump方式是参考贴图的AlphaGain(透明增益)计算的起伏效果,而Normal方式则计算物体法线方向来实现起伏。但无论何种方式,都不能真正意义上实现物体凹凸,尤其是表面起伏较大的凹凸。至于法线贴图的构成机理就不做分析了(除非你想在2d的绘图软件如Photoshop中完成3d法线贴图的绘制……),我只以实际效果进行说明。

1.首先,创建两个“经典”的球体(无论是动画还是建模,球体是众人青睐的对象……) 2.赋予球体Lambert材质后,将fractal(碎片)节点连接到BumpMapping节点上;接着点击 材质属性面板右上方的“GoToInputConnection”按钮,进入“输入连接”的节点-bump2d

角色模型制作流程

幻想之旅角色模型制作流程 1.拿到原画后仔细分析角色设定细节,对不清楚的结构、材质细节及角色身高等问题与 原画作者沟通,确定对原画理解准确无误。 2.根据设定,收集材质纹理参考资料。 3.开始进行低模制作。 4.制作过程中注意根据要求严格控制面数(以MAX为例,使用Polygon Counter工具查 看模型面数)。 5.注意关节处的合理布线,充分考虑将来动画时的问题。如有疑问与动作组同事讨论咨 询。 6.由于使用法线贴图技术不能使用对称复制模型,可以直接复制模型,然后根据具体情 况进行移动、放缩、旋转来达到所需效果。 7.完成后,开始分UV。 分UV时应尽量充分利用空间,注意角色不同部位的主次,优先考虑主要部位的贴图(例如脸,前胸以及引人注意的特殊设计),为其安排充分的贴图面积。使用Relax Tool 工具确保UV的合理性避免出现贴图的严重拉伸及反向。 8.低模完成后进入法线贴图制作阶段。 现在我们制作法线贴图的方法基本上有三种分别是: a.在三维软件中直接制作高模,完成后将低模与高模对齐,然后使用软件工具生成法 线贴图。 b.将分好UV的低模Export成OBJ格式文件,导入ZBrush软件。在ZB中添加细节制 作成高模,然后使用Zmapper插件生成法线贴图。 c.在Photoshop中绘制纹理或图案灰度图,然后使用PS的法线贴图插件将灰度图生 成法线贴图。 (具体制作方法参见后面的制作实例)

建议在制作过程中根据实际情况的不同,三种方法结合使用提高工作效率。 9.法线贴图完成后,将其赋予模型,查看法线贴图的效果及一些细小的错误。 10.进入Photoshop,打开之前生成的法线贴图,根据其贴在模型上的效果对法线贴图进行 修整。(例如边缘的一些破损可以使用手指工具进行修补,或者在绿色通道中进行适当的绘制。如需加强某部分法线贴图的凹凸效果可复制该部分进行叠加可以起到加强凹凸的作用) 11.法线贴图完成后,将法线贴图作为位置参考进行Diffuse贴图的绘制。 12.完成后绘制MASK贴图。 13.贴图全部绘制完成,将贴图按照规定重新命名,并存为.dds格式。具体存盘要求如下: 主角贴图标准 D(Diffuse) B(Bump) M(Mask) 头部(Head) D 512×512 B 512×512 M 512×512 身体(Body) D 512×512 B 1024×1024 M 512×512 手(Hand) D 256×256 B 256×256 M 256×256 护腕(Cuff) D 256×256 B 256×256 M 256×256 护腿(Leg) D 256×256 B 256×256 M 256×256 鞋(Boot) D 256×256 B 256×256 M 256×256 头发 (Hair) D 256×256 B 256×256 M 256×256 辫子(Plait) D 256×256 B 256×256 M 256×256 NPC贴图标准均为512×512,特殊情况另行商定。 DDS贴图存盘规则 如果贴图中有alpha通道,则贴图应选择DXT5 ARGB (Interpolated Alpha),如果没有,则应选择DXT1 RGB (No Alpha) Difffuse贴图按大小设置Mip Map Generation为

Maya 中制作和烘培AO贴图的基础教程

这是一个在Maya 8中制作和烘培AO贴图的基础教程。有些步骤可能与较早的版本里的菜单名不同。 大部分的东西在Maya中可能有很多不同的方法可以做到,但是这个方法很合理和快速很适合我。 1. 设置材质节点 - 首先打开hypershade窗口,使用鼠标中建将SurfaceShader节点从节点列表内拖入至工作区域 - 点击"Create Maya Nodes"(下图中蓝色圈中部分)改变为Menta Ray节点列表 - 然后展开T extures栏,用鼠标中建将mib_amb_occlusion节点托至工作区。

- 这里都是废话了,简单的讲就是看下图... 把两个节点的OutValu属性和OutColor属性链接起来 2. 设置场景 - 为了得到更好效果的AO贴图,场景的环境色必须是白色。在大纲中选中渲染用的摄像机后Ctrl+A 在属性编辑器里将Environment栏的背景色滑条拖动到100%的白色。

- 废话太多精简为:在全局渲染属性窗口里将渲染器改为MentalRay,然后将multi-pixel filter 改为Lanczos方式

- 关掉渲染设置窗口后将Surface Shader材质应用到模型,这个时候模型将会变成黑色。 3. 调整 - 废话太多,精简:渲染很快... 颗粒很多... 如下图:

- 废话省略N字。在HyperShade里选中AO节点Ctrl+A 把Samples改成256

4. 烘培至贴图 一旦有了AO渲染效果就更好,下一步就是烘焙至贴图了。 - 指定一个项目文件夹。file> Project> Set ... 我想这里不用翻译了。用Maya不知道制定项目,那么Maya就白学了.... - 确定已经为模型展好了UV。 - 确定模型的法线设置。不然贴图烤出来可能是黑的哦... - 确定模型的软硬边... - 记得备份场景哈 - 点选菜单Lighting/Shading > Batch Bake (Mental Ray) > Options box(文字后面那个方块) 看下图,其他的大部分设置一般不用动了..

max法线贴图

法线凹凸贴图 若要创建法线凹凸贴图,通常以两个对象开始:一个多边形细化对象(其高分辨率几何体将充当法线凹凸贴图信息的源)和一个低分辨率目标对象(它将接收法线凹凸贴图,并利用该贴图使其看起来比实际外观更细致)。本教程使用国际象棋中兵的两个版本来演示典型的工作流程。 设置并查看场景: 1.本课程的文件位于 tutorials/normal_bump 文件夹中。在3ds Max 中,打 开 pawn_normalbump_01.max。 惟一可见的对象是一个国际象棋兵的可编辑网格模型,它带有几个圆凿槽,还有反映在其曲面几何体中的粗糙边缘。此模型将充当将要创建的法线凹凸贴图的信息源。 2.在任意视口中选择兵,然后右键单击它以显示四元菜单。在“显示”区域中, 选择“隐藏当前选择”以将兵隐藏。 3.在活动视口中再次右键单击,然后在四元菜单中选择“按名称取消隐藏” 以显示“取消隐藏对象”对话框。在列表中单击 Pawn-LowRes 以将其高亮

显示,然后单击“取消隐藏”以在视口中显示对象。 这就是要应用法线凹凸贴图的低分辨率目标对象。它的曲面是平滑的,而且它已经应用了棋盘格纹理贴图。棋盘格贴图在设置曲面纹理贴图时用作可视化参考。让我们看一下这是如何完成的。 4.选择 Pawn-LowRes。在主菜单上,选择“修改器”>“UV 坐标”>“展开 UVW”。 5.在“修改器”面板>“参数”卷展栏上单击“编辑”按钮。 将显示“编辑UVW”对话框。 此对话框显示对象如何展开,以及纹理坐标如何映射到兵的面上。布局这样设置是为了便于绘制,对“润色”纹理贴图来说,这可能很必要。 在本课程中将不修改纹理坐标,所以,请关闭“编辑UVW”对话框。从堆栈中删

相关主题
文本预览