maya法线教程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、简介
这个角色是我参加Dominace War II 大赛——低多边形游戏角色设计——的参赛作品,大赛对模型的多边形数量和纹理大小作了相应限制——主要角色不得超过6000个三角形,附加1000个三角形左右的武器或装备,角色可带宠物,但三角形数量要和主要角色一起计算;主要角色和宠物的纹理合并在1张2048的正方形贴图里,武器和装备的纹理总计为1024大小,可以使用漫反射、高光、法线、凹凸、不透明度、辉光和反射贴图效果。

image002.jpg (38.1 KB)
设定
模型
纹理
动作
2.游戏建模流程
现在几乎所有的游戏内角色都使用mormal maps 法线贴图,通常需要制作出角色的高精度版本,烘培出法线贴图后应用到低多边形模型上。

不过高精度模型也不是必须的,法线贴图的制作方法比较***,比如使用凹凸贴图即可,甚至可以直接手绘(后面我会为你介绍Photoshop 绘制法线贴图的相关技巧),当然效果可能没有使用高精度模型烘培来的好。

创建一个角色需要的素材一般包括
.低多边形版本(或根据不同LODs-镜头距离-的多个版本)。

.高分辨率版本,用来生成法线贴图(可同时烘培occlusion 闭塞贴图或其它贴图来辅助生成最后的纹理效果,具体参照4.3)。

.游戏引擎支持的所有纹理贴图效果(漫反射、法线、高光等常用贴图效果)。

下面,在做好设计图的前提下,我来介绍建模/贴图的各个步骤。

建模时有两种主要方法(即素材创建的先后顺序不同)。

.低多边形->漫反射贴图->高分辨率模型->法线贴图及其它纹理
.高分辨率模型->低分辨率模型->法线贴图->漫反射及其它纹理
操作正确的话,两种方法的最终效果是一样的,具体选择哪种需要看工作习惯和流程安排。

我个人倾向于后者。

尽管通过-低/漫反射/高-的方式有一些优点:比如低多边形模型可以很快进入下一个流程制作动画;如果漫反射贴图保留了详尽的选区,可直接作为置换贴图应用到高分辨率模型上。

但是,它有一个非常大的缺陷——我会在下面用简单的图例指出。

这是一个带漫反射纹理的模型片段(带几粒扣子的Tshirt)
接下来将多边形导入mudbox,同时读取漫反射贴图,增加细分等级,并根据贴图添加相应位置的模型细节-比如衣服的皱折。

image009.jpg (7.85 KB)
使用漫反射贴图制作出置换贴图,为模型增加进一步的细节(使用置换贴图可以加快处理速度,同时可以保证计算出的法线贴图与漫反射贴图的细节位置尽可能接近)。

image010.jpg (13.89 KB)
上述工作完成后,将细分模型导入maya/3dsmax 或其它软件中使用光线追踪计算法线贴图。

如果处理得稍有不慎,就会遇到下图的错误。

image011.gif (47.18 KB)
可以看出法线贴图和漫反射贴图的细节没有完全对齐...这是因为我在雕刻时模型的位置可能稍稍有所变动;另外尽管我使用置换贴图来生成纽扣这样的细节,但不能保证光线追踪下法线贴图和漫反射贴图能够完美的叠加到一起。

如果想避免这种情况的发生,要尽可能降低原低多边形模型的置换贴图的强度。

使用Zbrush 可以降低这个问题的影响。

它使用自己内部的运算法则代替光线追踪来计算法线贴图,计算时会把细分等级一并考虑进去,但这样计算出来不能在其它软件或引擎中正确显示出来,比如会有贴图接缝。

我使用的所有软件在法线贴图的切线区间算法上都有少许不同。

最好的解决方法是在同一软件中计算并渲染法线贴图。

比如本例中我使用Maya 渲染,因此必须在maya中计算出法线贴图,以确保得到正确的渲染效果。

如果在Maya 中计算法线,在MentalRay 中渲染,就需要在Render Settings->mental ray 面板->Translation->Performance里钩选Maya Derivatives(这个选项默认为关闭)。

这将强迫MentalRay 使用兼容Maya 的算法进行凹凸贴图的渲染计算,注意该选项只有在钩选Export Polygon Derivatives 后才可用
第二种建模方法:高/低/UV/纹理。

这种方法可以省却上述的诸多麻烦,为模型雕塑和细节添加带来更多***度。

在制作高分辨率模型时,时刻记住它的目的是用来烘培法线贴图的,哪些细节必须建模,烘培成贴图贴图能否适当的表现出来,都是需要考虑的环节。

用下面的图片举个简单的例子,假如我有这样的一组高分辨率模型。

image012.jpg (10.21 KB)
我可以只用一个平面就表现出来,但效果没有高分辨率的好。

从正上方看几乎一样。

image013.jpg (6.71 KB)
但从侧面看就露馅了。

image014.jpg (3.92 KB)
更好的方法是增加一点多边形,让低多边形模型的形状与高分辨率模型相匹配。

image015.jpg (6.43 KB)
再贴上法线贴图后,从侧面看效果就好多了。

(当然,根据多边形的分布状况,你可以相应的增加多边形数量来降低坑坑洼洼的粗糙效果)
image016.jpg (4.92 KB)
另外,模型还要避免过于复杂的结构,比如下面的例子,诸多管线很难套进低多边形框架里,想要正确显示出来又会吃掉太多面数。

或许此图的细节在高分辨率模型看起来效果会很好,但做低多边形版本的时候,一定要把面数预算考虑进来——通常是5-10k三角形。

如果一开始没有规划好高分辨率模型的细节,你就会遇到上图的尴尬情况——需要比定额更多的面数才能正确匹配高分辨率模型的结构,甚至返回来高分辨率模型。

不用紧张,多做几次你就能对模型细节的取舍有一个大体的把握了。

另一个巨大的优势是可以利用高分辨率模型的细节烘培ambient occlusion 环境闭塞贴图(模拟全局光效果,让纹理看起来更真实)及其它贴图,从而为后面的纹理制作环节打下良好的基础。

image017.jpg (17.81 KB)
3.工具的选择
在开始展示V arga 的制作流程之前,我先来介绍一下这个项目所用到的工具。

首先是我的电脑,工作时遇到的大部分限制都是来自于这些硬件配置:
.athlon xp 2500+ @2400(不过超频对机器不好)
.1GB 内存
.GeForce 6600GT 显卡
你可以想象这么一台老机器对我建模上会有怎样的限制——在Mudbox中虽然可以增加到2M多边形数量,但显示会非常缓慢;Maya中导入1.5M多边形数量以上的obj文件就会经常出错退出(内存不够),只能将模型分成头、腿、手臂等片断逐个导入。

想要正常操作而不出错退出,这台机器的极限也就在1M三角形左右。

作为Maya 用户,软件方面我主要使用Maya 进行建模、UVs、纹理烘培和渲染。

高分辨率的雕刻工作使用Mudbox 完成(在Maya中建立低多边形框架,导入Mudbox 添加细节)。

雕刻完成后导出一个高细分等级的obj文件(通常为100-300k三角形数量即可,不用细分的太高)并导入Topogun(重建拓扑结构的游戏向软件)沿低多边形机构重建拓扑。

再之后将模型的高低分辨率版本导入回Maya,并用贴图转换工具计算法线贴图。

法线贴图可在Photoshop 中作进一步调整,有些可在Photoshop 中直接完成。

4.V arga 工作流程
游戏角色有一些共性:三角形面数限制,纹理尺寸和数量限制;纹理尺寸和数量限制必须严格遵守,但如果模型面数超出500-1000个三角形(比如预算为8k面)并且能够提高角色的外观效果,那么客户也能够接受。

这次比赛的限制是6k,我不打算超出面数,因此首先要建一个低多边形的框架来分配角色、宠物、武器之间的面数比例。

这不是最终成品,但可以让我只管的了解到那些细节可以加入到高精度模型中。

4.1.低多边形框架
下图是角色最初的低多边形框架的各阶段回放。

image018.gif (345.02 KB)
下载次数:0
模型完成后,我对角色、宠物和武器的面数分配有了较全面的把握。

接下来将模型断开,理顺网格——整理拓扑结构,尽量使用4边形,减少三角形,避免点的共享边超过4条。

从而在雕刻时对模型表面的细分和边形更易掌控。

下图为整理好的模型网格,准备导入Mudbox 作进一步处理。

image019.jpg (15.98 KB)
4.2.Mudbox中添加细节
接下来将低多边形网格导入Mudbox,在你机子的能力范围内狂加细节。

对我来说,这是整个流程中最有乐趣的环节。

下面是一些模型的处理回放。

靴子(最高细分等级略低于1M个三角形)image020.gif (200.22 KB)
臀部(最高细分等级大约1.6M个三角形)image021.gif (147.24 KB)
腿(最高细分等级大约500k个三角形)image022.gif (256.03 KB)
手臂(最高细分等级大约600k个三角形)
image023.gif (330.1 KB)
躯干(最高细分等级大约800k个三角形)
image024.gif (324.9 KB)
下图为完整的高分辨率模型:8.5M个三角形(为了做这个教程,我在新机子上把所有模型片断都导入进maya,结果maya吃掉了3.5G内存)。

image025.gif (39.57 KB)
现在有趣的环节已经over了,我又重新捡起最开始做的低多边形框架,参考高分辨率模型再次调整它的形状,使其互相匹配。

Topogun 在这里可以大派用场,导入低多边形框架,并使用高分辨率模型作参考,根据需要改变拓扑结构,确保低多边形模型能够通过法线贴图体现出高分辨率模型的精彩之处。

image026.jpg (15.32 KB)
当然,模型还是分段进行处理的。

完成后就可以进入下一个阶段:烘培法线贴图。

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)
image027.jpg (18.39 KB)
下载次数:0
Target Meshes 里点击add selected,选择低多边形版本;在Source Meshes 中点击并选择高分辨率版本。

如上图所示。

(如果你没有指定Source Meshes 的话,Maya 会默认对场景所有物体进行采样)
——Target Meshes 的Display 选项中选择Envelope
image028.jpg (14.54 KB)
——这将创建一个可编辑的Envelope 包络网格,类似于低多边形模型的复制品,用来查看与Source Meshes 的包裹情况,可以通过Search envelope 滑杆来调节大小。

如果想要得到好的效果,你需要让包络网格完全包裹住高分辨率模型(如下图右1所示)
image029.jpg (30.66 KB)
——如果缩放造成的差距太大的话烘培也会出错,因此需要在包与不包之间找一个平衡点,基本上达到下图的程度就ok了。

image030.jpg (12.09 KB)
——进一步调整包络网格的点/边/面,把高分辨率模型露出来的那部分完全包进去
然后选择你想要烘培的贴图,我选了法线贴图。

(如果你机器好的话也可以烘培ambient occlusion 环境闭塞贴图,我的那台太慢了,为了赶时间只好用MentalRay 烘培带有法线贴图的低多边形模型,速度快了很多,效果也勉强能接受)
image032.jpg (30.44 KB)
当然,还要选择保存路径,设置文件格式、贴图尺寸等细节参数。

注意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 闭塞贴图的方法。

(虽然效果不如直接用高分辨率模型来的好,但是会快很多)
比如下面是一个完成后的带有法线贴图的低多边形模型(我拿靴子举个例子,你可以用这种方法一次完成整个角色)
image033.jpg (20.38 KB)
做一个大平面,把它放在靴子下面。

image034.jpg (4.48 KB)
确保perspective camera 的环境背景为白色(这样一来,final gather 的光线不用于任何物体碰撞,就能返回白色的信息)。

image035.jpg (21.7 KB)
渲染器设为mental ray,确保钩选export maya derivatives
image036.jpg (28.47 KB)
在Render Settings-> Common tab ->Render Options 中,Enable Default Light 默认为选中,把它取消掉(确保Maya不会自建默认灯光,让MentalRay全权处理),删除或隐藏场景中
的所有灯光。

image037.jpg (23.05 KB)
激活Final Gathering(我通常将mental ray 面板中的Quality Preset 设为Production,并激活FG,将精度提高到1000-1500,其它保持默认)。

image038.jpg (29.38 KB)
为低多边形物体添加一个新的Lambert 材质,将颜色设为纯白,diffuse 值为1。

(为地面添加一个相同设置的材质)
image039.jpg (25.12 KB)
下载次数:0
将材质赋予低多边形模型,并将法线贴图连接到bump 通道。

确保bump 通道使用tangent space normals 模式。

image040.jpg (21.13 KB)
下载次数:0
在正式烘培前先用Mental Ray 渲染测试一下,如果一切ok,就会得到下图所示效果。

image041.jpg (7.01 KB)
接下来打开Lighting/Shading->Batch bake (mental ray),在选项中选中bake shadows 以及orthogonal reflection,其它选项如下图所示,文件格式和大小根据你自己的需要而定。

image042.jpg (31.97 KB)
点击convert 按钮,不出意外的话会得到一个类似下图的纹理image043.jpg (13.66 KB)
怎么样,效果还是可以接受的吧,而且速度很快!
同理还能快速烘培出高光贴图。

重命名并保存场景,关掉FG,删除地面。

低多边形模型材质改为blinn,颜色纯黑,高光颜色为白色,反射值为0。

image044.jpg (34.11 KB)
如下图所示建立一组不同方向的灯光,从物体上放照射。

image045.jpg (9.35 KB)
烘培选项保持不变,但速度超级快(因为只计算高光)(如果想要更好的效果,可以将纹理分辨率加倍,导入Photoshop 加工)
渲染后的纹理如下图所示,你可以将它以screen/color dodge 的模式叠加到漫反射纹理上,对于塑料、金属、皮革等高反光材质有显著的提高
image046.jpg (16.86 KB)
4.4.Photoshop 进一步调整法线贴图
这一节主要讲述法线贴图的工作原理及应用技巧,需要一些基础的数学及向量等知识。

4.4.1.TS(tangent space)Normal Maps 切线域法线贴图综述:
首先来简单说一下关于法线贴图的计算和显示。

我的兴趣主要集中在tangent space normal maps(切线域法线贴图),因为world 或object
space normal map 不适合角色或可变形物体。

因此除非特别指明,下面我说的所有法线贴图都指的是tangent space normal maps(切线域法线贴图)。

如果你和我当初一样是第一次接触法线贴图(尤其是切线域法线贴图),下面的内容应该有点帮助。

最开始,我真是被“Seam”接缝问题打败了:一个软件计算出来的法线贴图不能在另一个里正常显示——UV边界上会出现接缝。

我绞尽脑汁想要解决这个问题——读每个软件的帮助文件、作测试、在互联网上搜索...终于了解了这个问题以及它产生的原因,不过还是不能修正它。

这个问题的产生主要在于各个软件计算/显示切线域法线贴图的方式不同。

Tangent space 切线域由3个向量组成:一个是normal(法线-与表面正交垂直);另外两个与法线垂直,称为tangent(切线)和binormal(副法线)或bitangent(双切线)。

这两个名字我都见过,有人说bitangent(双切线)这个称呼是正确的,毕竟我们讨论的是一个表面——3d空间的曲线的切线域为一条切线两条法线(normal 法线和binormal 副法线);而表面的切线域为一条法线和两条切线(tangent 切线和bitangent 双切线)。

其实名字武官紧俏,主要明白说的是什么就行了。

总之这三个向量能定义表面上任意一点,把它们集合在一起就成为了一个坐标组。

一个三角形的切线域通常按下述方法计算:
——Normal V ector 法线向量与三角形面垂直,用蓝色表示,储存在法线贴图的蓝色通道里。

——tangent 切线向量用红色表示,储存在红色通道里;binormal 副法线向量用绿色表示,储存在绿色通道里。

它们的方向与UV的方向相同:切线为左右向,即为贴图空间中的U 坐标;副法线为上下向,是贴图空间中的V 坐标。

许多法线贴图的设置窗口中都有反转方向的选项,这个方向指的就是tangent 切线向量的(左右/右左)方向和binormal 副法线向量的(上下/下上)方向,另外一些软件的方向比较特殊。

你也可以在Photoshop 的通道中反转方向,比如要反转红色的切线向量方向:按ctrl+1 进入红色通道,按ctrl+I 反转,按ctrl+~ 返回RGB模式(副法线向量同理操作即可)。

image047.jpg (13.91 KB)
假如我沿对角线切割UV,并将1号面顺时针旋转90度,而UV 空间的旋转,导致了1号面切线方向与与最初的位置发生了变化(1号三角形的rgb通道同样沿蓝色轴旋转了90度)
因此,UV shell 的方向会影响到法线贴图的颜色;如果旋转模型的UVs(或其中一部分UV shell),比如顺时针旋转90度,那么重新计算出来的法线贴图颜色就会完全不一样(并不是整张图像旋转了90度这么简单。

你可以在Photoshop 中顺时针旋转90度对比一下就会发现区别)。

每个点的切线域计算完成后,还可以通过内插值的方法得出表面上其它任意位置的切线向量,通常tessellation 镶嵌细分越多,计算起来就越复杂。

比如Maya 上一个版本的法线贴图计算就依靠tessellation 镶嵌细分,因此如果你有一个三角面的模型,选择一个边反转,法线贴图就会因为TS 切线域的重新计算而无法正确显示。

不过Maya 的新版本解决了这个问题:用专门的工具(比如NVMesh Mender)备份所有点的切线数据模型,以用于per-pixel lingting——基于象素点(而不是顶点)的照明。

如果采用光线追踪的方式来计算法线贴图,会先从低多边形网格的当前点发出一条光线,投射到该点法线与高分辨率模型相交位置,同时按world space 计算相交处高分辨率模型的法线数据,最后将计算结果传递回低多边形模型的点上,并储存在法线贴图中。

因此法线的计算是根据低多边形模型的切线域来进行的,而切线域必须由相同的法线/切线/副法线组成,而不同软件间由于切线域计算方式的不同,最终导致了法线贴图显示的扭曲或间断。

不能正确显示还不是大问题,最主要的是不同软件间的数据无法共享,尽管有人出于爱好编写了相应的工具或插件来解决,但真正确立了一套通用规则的只有Mudbox,在他们的在线帮助上可以看到详细的切线域向量计算方式。

现在你知道问题的根源了,虽然无能为力,但至少知道这是软件的问题,不用自己独自烦恼了。

下面我来举个例子来解释一下法线贴图的计算以及转换方式,以便于你能够在photoshop 中进行调整、叠加以及直接绘制。

我将一个平面和圆柱体的法线贴图烘培到下图绿色线框标注的平面方块上。

如前所述,切线域空间如下图所示分别为:切线域法线为蓝色箭头,切线为3-4方向红色箭头,副切线为3-1方向绿色箭头。

圆柱体为硬边分段,以便于观察法线贴图的变化,分段标号为1-7。

image049.jpg (14.58 KB)
如果我们从正前方观察物体,形状应如下图所示。

图片的上方有一组配色表:高分辨率模型为白色,它的法线用青色表示,低多边形模型为粉红色,法线用黄色表示(因为低多边形表面上所有地方的法线方向都是一样的)。

下面的TS(切线域)坐标分别为:切线(红色左-右方向)、法线(蓝色下-上方向)以及副法线(绿色垂直屏幕,你-屏幕方向)。

注意图例画面上高分辨率所有面的副法线方向都是平行的,而圆柱两端的三角形面在法线贴图中将不可见。

现在,高分辨率模型上每个多边形都根据切线域分解为法线向量(青色)、切线(红色)及法线(蓝色),所有的副法线因为与副法线向量平行,因此均为0。

绿色的虚线用于辅助观察面和面之间的颜色过渡以及它们对应的模型位置。

从低多边形模型到高分辨率模型的灰色箭头用于表示计算法线贴图时发射的光线。

现在假设低多边形的点(A\B\C\D\E\F\G\)发射了了光线,接下来会怎样呢:
附带说一下,如下图所示,将青色的法线向量分解为切线域结构,以向量为对角线,单位为1,那么切线和副法线都会按正反方向生成一个矩形相邻的两条直角边,数值为-1至1之间,并可按比例转换为正整数,以灰度值储存在法线贴图的RGB通道中:
——切线(红色通道)负方向区间(-1,0),那么它的灰度值范围就在0-127之前,0是128的中灰色。

反之,正方向(0,1)的范围就在129-255之间。

——同理适用于副法线的绿色通道。

——法线向量的值永远为正,灰度值范围总是在128-255之间。

因为切线域法线贴图的法线向量不能指向负方向,所以以它为标准单位,可以很方便的计算出其余两个数值。

我们从D点发射一条光纤,与高分辨率模型的4号面相交,因为两者的法线平行,所以切线的值为0,在红色通道表示为128的中灰。

F点的光线与6号面相交,可以看到这个面的法线向量(青色)为1个单位,分解出切线(红色)长度约为正方向0.78,对应的法线贴图的红色通道灰度值是228;蓝色的副法线长度约为正方向0.625,对应的法线贴图的蓝色通道灰度值为208。

B点的光线与2号面相交,青色的法线向量可分解为红色的切线,长度-0.78单位,对应灰度值为22;蓝色的副法线长度为0.625单位,对应蓝色通道的灰度值
image050.jpg (49.69 KB)
在Photoshop 中,你可以通过ctrl+1、ctrl+2、ctrl+3 查看单独的红、绿、蓝通道,并通过ctrl+~ 返回RGB模式。

如果我将圆柱体旋转90度
image051.jpg (8.89 KB)
法线贴图会变成这样
image052.jpg (5.8 KB)
分解成单个通道
image053.jpg (3.77 KB)
下载次数:0
2010-4-1 12:16
image054.jpg (6.67 KB)
下载次数:0
2010-4-1 12:17
image055.jpg (5.4 KB)
这回红色通道变成扁平的128中灰色(就像之前的绿色通道一样):因为现在所有高度上的面都与红色箭头平行,所以分解出的切线数值为0,红色通道灰度值为128。

绿色通道(副法线)类似于之前的红色通道(但逆时针旋转了90度),蓝色通道和之前一样,但同样旋转了90度。

了解了每个通道的渲染原理后,我们可以以此类推:
为高分辨率模型(圆柱和平面)应用一个lambert 材质,将color 设为中灰(128 128 128),incandescence 同样为中灰,diffuse 为1。

image056.jpg (26.79 KB)
在顶(正交)试图观看圆柱体,创建一盏普通的平行光灯,颜色为纯白,强度1,从右侧照射(与屏幕平行),同理创建一个“吸光”灯,颜色纯白,强度为-1,从左侧照射。

image057.jpg (18.3 KB)
将视图区的截图与计算出的法线贴图的红色通道相比,外观几乎一样。

相关文档
最新文档