[材质贴图] 法线贴图工具包及3ds max模型烘焙技巧

查看:3487 |回复:3 | 2019-3-12 16:07:34

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 kanisen 于 2019-3-12 16:10 编辑


法线贴图(Normal mapping)技术在游戏制作中非常普遍,和在计算机图形领域中已经有接近30年历史凹凸贴图相比,NormalMap是一种目前很流行的凹凸贴图技术,因为在游戏(比如XBOX和PlayStation这种新世代主机游戏)中考虑更多的是时间成本(据说3D美术师做一个高模是要花不少时间的)和游戏性能(面数越多,GPU的运算量就越大),所以低模(面数较少的模型)在游戏中使用较多。为了表现精细模型的效果,需要在接受光照的时候不同区域都能呈现出不同的明暗效果,低模+法线贴图就能实现高模的效果。
今天的游戏制作基础课程给大家讲解法线贴图的原理、获取法线贴图的方法以及3ds max低模烘焙导入Unity步骤。

832845c87671fd730a.png

首先给大家看几张图片,那张蓝紫色的贴图就是法线贴图,他的作用就是在一个面数很低的模型上显示出尽可能多的细节,表现轮胎纹理正是通过法线贴图实现的。
615835c87673bd4667.png

低模加上法线贴图对比效果。

根据你制作物件(比如表现树木的肌理感)的不同,法线贴图可以很简单也可以很复杂。

我们可以从最对简单的几何形入手,到各种奇形怪状让人蛋疼的东西。

什么是法线贴图,如果大家想看更专业的解释可以自行求助搜索引擎,法线贴图(Normal mapping)在三维计算机图形学中,是凸凹贴图(Bump mapping)技术的一种应用,法线贴图有时也称为“Dot3(仿立体)凸凹纹理贴图”。凸凹与纹理贴图通常是在现有的模型法线添加扰动不同,法线贴图要完全更新法线。与凸凹贴图类似的是,它也是用来在不增加多边形的情况下在浓淡效果中添加细节。但是凸凹贴图通常根据一个单独的灰度图像通道进行计算,而法线贴图的数据源图像通常是从更加细致版本的物体得到的多通道图像,即红、绿、蓝通道都是作为一个单独的颜色对待。

我们为什么要使用法线贴图呢?真实与效率:其实也是一种简化模型及增加模型真实性的技巧啊!法线贴图可以创建出比真正的模型更多几何体的假像,和置换贴图一样法线贴图并不能真的影响低模的几何网格;

贴在低模的法线贴图通道上,使低模拥有法线贴图的渲染效果,却可以大大降低渲染时需要的面数和计算内容,从而达到优化动画渲染和游戏渲染的效果。

2.如何获取法线贴图?在正规的游戏行业中法线贴图的来源基本只有两种,一种是通过MAX,MAYA,ZBrush等专业的3D软件通过高模和低模的匹配烘培而来。这种做法的好处是何以得到体积感和大结构非常好的法线贴图,缺点也很明显,就是需要一定的烘培和相应的建模技术。关于3D软件的烘培可以看下文章后面的3ds max模型烘焙导入Unity步骤。第二种相对简单,找到合适的平面图片,然后丢到相应的软件中处理即可得到一张细节丰富的贴图,但是缺点是除了平面细节其他的基本都没有....

重点来说下那些法线贴图生成插件:ps法线贴图插件(Quixel nDo2), 专门处理法线的插件,使用之前需要准备相应的贴图素材

强烈推荐一款超级贴图生成软件,CrazyBump作为一个图片转法线帖图的小工具,操作起来非常方便。CrazyBump可调节参数也不是很多,效果比PS插件的细节要丰富点,并且能同时导出法线,置换,高光和全封闭环境光帖图,并有即时浏览窗口。

ShaderMap Pro作为一款专业法线生成器,可自动从任一原始材质中生成位移、常态、镜面以及环境光遮蔽等类型的贴图,同时也可以烘焙贴图。

The Visualize提供了一个编辑器配置材料应用于3d模型。创建的每个材料的地图。可视化工具允许艺术家多个材料应用于3d模型的多个实例并排比较。

ShaderMap 的新特点在于,新的用户使用界面以及实时常规贴图喷绘参数。其生成结果可通过3D形式自动预览,用户还可通过相关选项手动调整照明效果。而在通过其它方式编辑材质时,仍可使用材质观察器展示相关材质。在高级选项中,Rendering Systems还增加了多核处理系统以及独立的32位、64位二进制文件,此外还为用户提供了一个免费的软件开发工具包(SDK),可通过基于高级着色器语言(HLSL)的着色器自定义各种材质。


3. 3ds max低模导入Unity步骤在有了这么多强大的插件后,更多的是在绘制阶段对所有结构的光影和细节理解哦,次时代单机游戏都可以用法线贴图制作出真实的效果。那么接下来,3ds max低模导入Unity步骤,童鞋们做好准备吧!


1.选择模型,进行UVM展开。2.烘焙,在渲染菜单下选择渲染到纹理(Render to texture),或者快捷键是“0”。

选择贴图坐标通道,输出添加“LightingMap”。

可选择将文件名和类型保存到一个文件夹,将这些烘焙完纹理后拖到Unity3d中。

3.烘焙后处理,我们发现烘焙之后物体没有纹理了。吸取材质发现其有2个材质(因为max导出不支持2种材质,所以需要选择其一,否则2者都丢失)。

在渲染到纹理面板点击“清除到外壳材质”(Clear Shell Materials),再次吸取材质发现恢复成1个了。

4.导出,导出时直接选择对应unity的文件地址,这样自动导入unity。此时在unity导入时我们发现导入了模型,也产生了.fbm的材质文件夹。如果材质球呈现黑色,我们可以找到对应的材质球后改变Shader,将之前导出的纹理贴图拉至物体材质文件夹.fbm中,移入Lightmap中,物体会成功获得贴图。如果烘Normal有问题,可以检查一下法线是否正确。

下图是用法线贴图烘焙的室内场景。



2019-3-12 16:07:34  
 赞 赞 1

使用道具 登录

3个回答,把该问题分享到群,邀请大神一起回答。
2#
然后?
回复 收起回复
2019-3-21 19:09:57   回复
 赞 赞 1

使用道具 登录

5#
然后没了吗
回复 收起回复
2020-1-3 17:28:03   回复
 赞 赞 1

使用道具 登录

6#
感谢楼主分享
回复 收起回复
2021-7-20 13:06:25   回复
 赞 赞 1

使用道具 登录

CG 游戏行业专业问题

3D建模技术文章教学modeling
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表