转自:https://www.sohu.com/a/156489635_718614

随着最新的次时代技术PBR流程的普及,越来越多的公司由传统流程转向了PBR流程,主要原因在于PBR材质不仅效果上更加贴近于真实,而且制作效率上要比传统快了很多。

此次以一个手雷为案例,分别用了传统流程和PBR流程进行了制作,可以非常直观的对最终效果和制作流程进行对比。

通过上图对比可以看到,运用PBR材质后黄色漆面材质与灰色金属材质的质感,灰尘与金属的质感区分更加明显了,高光细节也更加真实。

传统流程上物体的反射属性是难以表现的,在运用PBR材质后金属的反射也体现的更完美,主要得益于新的金属度和粗糙度两张贴图。

了解PBR相比传统流程的优势后,再来看看制作上有什么不同吧。

在模型制作阶段传统与PBR并没有差别,仍然是中模-高模-低模-法线的流程。接下来详细说明两种方法在材质制作上的流程。

传统流程

1.烘焙AO法线后,转出一张CAVITY贴图,AO正片叠底模式,CAVITY叠加模式,简单进行固有色区分

2.叠加基本纹理

3.叠加金属划痕,物体间锈迹阴影

4.手动绘制掉漆标志等

5.用颜色贴图去色调整色阶制作高光贴图,用黑白贴图的强度区分质感,越白的地方高光越亮,反之越暗。

6.Marmoset Toolbag 1中渲染

PBR流程

PBR流程贴图最终输出为Albedo,Normal,Metalness,Roughness(以金属度,粗糙度流程为例)

1.Albedo相比传统方法去掉了AO的叠加,只有固有色,不包含任何光影信息。

2.法线与传统流程一样

3.Metalness控制材质金属度,金属为白,非金属为黑

4.Roughness控制材质粗糙度,越光滑.高光越集中的材质粗糙度贴图越黑,反之贴图越白。

此次使用Substance Painter 2进行材质制作

  1. 先区分ID贴图,用不同的颜色代表不同的材质或固有色

2.创建新项目,导入模型和法线,AO,ID贴图

3.烘焙面板,烘焙出其他辅助贴图,便于后期使用智能遮罩进行材质制作(法线,AO,ID等贴图也可在Substance Painter中烘焙)

4.使用智能材质球配合ID贴图简单做出材质区分,黄色漆面金属和带有反射的灰色金属,以及黑色的金属环。

5.添加一个深色填充层,粗糙度为白色,给予一个物体之间的智能遮罩模拟物体间的灰尘,可在遮罩层上添加一个PAINT图层手动绘制需要灰尘的地方。

6.新建空层,使用画笔工具选择一个银白掉漆材质,配合黑白划痕纹理拖到Stencil中,绘制金属划痕,划痕过多的地方可用橡皮擦除

7.新建空层,PS中制作一张标志的黑白贴图,拖入Stencil中,画笔选择一个深色固有色,粗糙度偏白,画出标志,并用橡皮擦除磨损的感觉。

8.最终Marmoset Toolbag 2中渲染。

PBR与传统制作流程差异:

通过对比可得出PBR由于大量使用到智能材质体现基本质感,用智能遮罩快速体现物体阴影关系表面细节等,而且是直接进行材质的绘制,不用像传统方法需要手动绘制掉漆和阴影关系,先制作颜色后制作高光贴图,所以在制作效率上有很大的提升。

希望此次分享能对大家有所帮助,让大家更多的认识到PBR流程与传统的差别

【3D美术教程】手雷(传统与PBR流程)的更多相关文章

  1. Java/JDK安装教程手册(正规图文全流程)、运行、环境配置

    Java/JDK教程手册 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 一 Download Resouc ...

  2. 2017.3.31 spring mvc教程(二)核心流程及配置详解

    学习的博客:http://elf8848.iteye.com/blog/875830/ 我项目中所用的版本:4.2.0.博客的时间比较早,11年的,学习的是Spring3 MVC.不知道版本上有没有变 ...

  3. 1、CC2541蓝牙4.0芯片中级教程——基于OSAL操作系统的运行流程了解+定时器和串口例程了解

    本文根据一周CC2541笔记汇总得来—— 适合概览和知识快速索引—— 全部链接: 中级教程-OSAL操作系统\OSAL操作系统-实验01 OSAL初探 [插入]SourceInsight-工程建立方法 ...

  4. Libgdx New 3D API 教程之 -- Libgdx中使用Materials

    This blog is a chinese version of xoppa's Libgdx new 3D api tutorial. For English version, please re ...

  5. 7.Swift翻译教程系列——控制循环的流程

    英语PDF下载链接http://download.csdn.net/detail/tsingheng/7480427 Swift提供了类C语言类似的控制流结构.包含for循环和while循环来多次运行 ...

  6. Entity Framework入门教程(2)---EF工作流程

    EF工作流程 1.EF基本CRUD流程 下边的图就可以很清晰地展示EF的CRUD操作的基本工作流程: 这里做一个EF CRUD操作的简单总结:1.定义模型:这是EF工作的前提,定义模型包括定义领域类( ...

  7. Unity 3D中ToLua-UGUI使用说明、导入Unity流程、制作登陆界面

    ToLua制作登录界面 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 请支持大神开发者:骏擎CP,蒙哥等奔 ...

  8. Unity 3D换装系统教程/Demo

    Unity3D换装系统教程 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 Costume Change ...

  9. CSS3 3D笨蛋教程

    英文原文An Introduction to CSS 3-D Transforms 爱因斯坦说所有概念都必须介绍给儿童们,若他们无法了解,这些理论就毫无价值. 透视 一个元素需要一个透视点才能激活3D ...

随机推荐

  1. 和系统运行状况相关的Shell命令总结

    1.  Linux的实时监测命令(watch):    watch 是一个非常实用的命令,可以帮你实时监测一个命令的运行结果,省得一遍又一遍的手动运行.该命令最为常用的两个选项是-d和-n,其中-n表 ...

  2. sql存储过程编程带事务

    CREATE PROCEDURE [dbo].[存储过程名字] @错误参数_ErrorCode int output, @参数1 int, @参数2 varchar(20), @参数3 varchar ...

  3. 企业面试题:Buffer与cache的区别?

    buffer缓冲 cache是缓存. 写缓冲,读缓存.简单点说,buffer是即将要被写入磁盘的,而cache是被从磁盘中读出来的.缓冲(buffers)是根据磁盘的读写设计的,把分散的写操作集中进行 ...

  4. PHP写的验证码类

    class Captcha { private $width; private $height; private $codeNum; private $code; private $im; funct ...

  5. python-基础数据类型,集合及深浅copy

    一 数据类型定义及分类 我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,1是数字,“汉”是文字,否则它是分不清1和‘汉’的区 ...

  6. 阶段01Java基础day21IO流02

    21.01_IO流(字符流FileReader) 1.字符流是什么 字符流是可以直接读写字符的IO流 字符流读取字符, 就要先读取到字节数据, 然后转为字符. 如果要写出字符, 需要把字符转为字节再写 ...

  7. .Net Core 控制台程序生产exe

    打开csproj ,添加一行 <RuntimeIdentifier>win10-x64</RuntimeIdentifier> 具体如下: <Project Sdk=&q ...

  8. Python基础05_str_补充

    继续学习中, 补充一些str 的索引.切片.长度.循环输出等. #!/usr/bin/env python # coding:utf-8 # 通过下标索引获取字符串中的某个字符 # 1. 索引 tes ...

  9. JAVA学习笔记系列1-Java版本介绍

    JavaSE(Java Standard Edition):标准版,定位在个人计算机上的应用(桌面应用).因为一般都是Windows系统,因此Java的这个发展并不好. JavaEE(Java Ent ...

  10. Spring 的介绍和目标

    1. Spring介绍 打开Spring 官网查看对 Spring 的介绍和目标 http://www.springsource.org/about We believe that: · J2EE s ...