Bitmap 贴图加工成 PBR 贴图 Part2 - SETTING UP TO PIXAR RENDERMANTM RENDERING FOR MAYA.

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_39812022/article/details/101524185

学习目标

导出制作的贴图,并在 Pixar RenderMan for Maya 里做高品质渲染 setting 和 Shader 设置,并再了解下
SSS 属性。

RenderMan 的历史。

对电脑图形历史有很多贡献的 EDWIN CATMULL 1979年入职卢卡斯影业后成立了 PIXAR ANIMATION STUDIO 正式开始开发了 RENDERMAN 。
PIXAR ANIMATION STUDIO 原本是 ILM 的一部分动画开发子公司, Apple 创始人史蒂夫乔布斯从卢卡斯影业收购后,是从出售Pixar图形电脑的硬件公司开始的,但是 John Lasseter制作的短片动画部门制作其他公司的广告动画时跟Walt Disney协作在 1995制作了 TOY STORY 后, PIXAR 就作为独立的 Animation 开发工作室开始走上了独立开发公司的道路,之后制作了 TOY STORY、海底总动员等世界级动画片,之后被 Walt Disney 收购了。
制作多个剧场版动画和短片动画的过程中,把高品质3D渲染技术提升为世界顶级,做了很大的贡献。
RENDERMAN 是现有的具有最悠久历史的渲染软件,在2015年后开始公开发布了免费激活码版本。

安装 RenderMan。

备注 : 在中国如果没有使用 VPN 有可能无法安装。
在这里插入图片描述
https://renderman.pixar.com/store
在这里插入图片描述
选择 TRY FOR FREE 。
如果已经安装过其他版本或者激活码到期了就选 RENEW 。
在这里插入图片描述
一定要创建用户论坛账号。
在这里插入图片描述
生成账号后登陆。

https://renderman.pixar.com/intro
在这里插入图片描述
点击 Free to Try 按键在申请体验版的 Form 上诚实地输入信息。
在这里插入图片描述
填完后提交。
在这里插入图片描述

现在打开了下载页面。
点击 Download 按键下载安装文件。

RenderMan-InstallerNCR-22.5.0_1970143-windows10_vc14icc170.x86_64.msi
应该是下载了这种形式的安装文件。
直接安装吧。
在这里插入图片描述

尽量维持基本安装路径。
建议不要做改成 D 盘这种动作。
在这里插入图片描述

按 Next 键继续安装。
在这里插入图片描述

RENDERMAN 管理工具安装完成。
点击 Finish 结束。
在这里插入图片描述

自动执行 RENDERMAN 安装管理。
输入在网页上创建的账号和密码后点击 Next 安装。
在这里插入图片描述
点击 Show All 就能看到要安装的内容。
在这里插入图片描述

RenderMan 基本设置。

执行 MAYA。
作者用的是 MAYA 2019.1 。
在这里插入图片描述

环境设置上打开 Plug-in manager 窗口,把 Maya renderman plug-in 进行 load 。
在这里插入图片描述

Shelve 上出现了 Renderman 22.5 图标。
在这里插入图片描述

上端菜单条也容易找到。
作者只会说明用 SD 里制作的贴图渲染案例的过程。
详细的 Renderman 22.5 功能请参考 Renderman documents 或者 Pixar Renderman 网页。
https://renderman.pixar.com/learn_tutorials
里面有很多RENDERMAN相关案例。

在SD导出 Texture 。

会重新打开 SD 工程导出 Part1 做过的贴图。
贴图用 Metallic Roughness 方式导出。
在这里插入图片描述

RenderMan 光照。

设置基本 IBL 光照。
设置方向光。
在这里插入图片描述

在 RENDERMAN Shelf 里把鼠标放到太阳的图表上右击就可以选择并生成三种全局光照。

因为会添加 HDR IBL 光照,所以选择 PxrDomeLight 并添加。
使用 SD 和 SP 使用的相同的 HDR 图片。
在这里插入图片描述
Tomoco Studio.exr
在这里插入图片描述
生成 PxrDomeLight 在 Color Map 登记 Tomoco Studio.exr。
在这里插入图片描述
在 Maya viewport 会标识环境图,如上。
在这里插入图片描述
在这里插入图片描述
第一步先点击 R 键激活 GPU 渲染。
在这里插入图片描述

但是添加 Sphere Mesh 渲染后因为面数不足所以是上图的渲染效果。
在这里插入图片描述

选择 Sphere Mesh 后把 Rman Subdiv Scheme 在 None 变更成 Catmull-Clark 。
在这里插入图片描述

选择 Catmull-Clark 就跟上图一样,渲染的时候会自动适用 Subdivision 。
在这里插入图片描述

可以获取跟上图一样的干净的 Surface 。
现在基本设置完成了。
设置成跟 SD 或者 SP 差不多水准的渲染环境就可以了。

RenderMan 材质。

渲染前的材质设置。
1. 设置基本 PBR MATRIAL 。
2. 添加半透效果。
3. 最终渲染。
总共分3个阶段进行。
在这里插入图片描述

RenderMan Shelf 里把鼠标放到星星周围后右击,会如上图一样出现 6 种 Surface Material 列表。

添加 SURFACE MATERIAL 。
1. 在选择 Sphere Mesh 的状态下选择 PxrDisney 。
(PxrDisney 可能对大家来说更好理解。会提供跟传统实时渲染引擎的 PBR 差不多的参数。
2. 这个案例比较特别不会使用 Displacement 效果,所以选择基本设置 PxrDisney Material 。
在 HyperShde 里修改。
在这里插入图片描述
主要会修改以下 Input 信息。
1. Base Color (Albedo)
2. SubSurface(Translucency)
3. SubSrufaceColor
4. Roughness

是 PxrDisney 的 Roughness 基本 GPU Rendering 。
在这里适用 Base Color(Albedo) 和 Roughness Texture 。

现在把 SD 导出的贴图导进 Maya 工程后渲染。

Material Node 设置。

现在开始正式把 Texture 们连接到 Material Node 上吧。
作者在本次案例没有用 HyperShade 窗,用的是 Node Editor 。
在这里插入图片描述
使用 RenderMan 专用 Texture File loader 。
在 Node Editor 窗按下 Tab 键后用 PxrTexture 搜索后添加 Node 。
在这里插入图片描述
添加了叫 PxrTexture1 的 Node 。

为了便于知道用途, PxrTexture1 名字变更成了 Base_Color 。
在这里插入图片描述

用 Ctrl+D 复制 Base_Color Node 后命名变更为 AO_Map 。
因为 PxrDisney 没有单独的 AO map 输入端口,所以要直接用 Blend Node 混合到 Base_Color 。
在这里插入图片描述
在 Node Editor 里用 Tab 键弹出搜索窗后用 pxrblend 搜索添加 PxrBlend Node 。
在这里插入图片描述
把 PxrBlend node 的 operation 变更为 Multiply , AO Map 连接到 Top Color 后 Base_Color 连接到 Bottom Color 。
在这里插入图片描述
通常 RenderMan 里不使用 AO 图, 把 Displacement 等和实际表面Mesh曲率的信息从光的入射角使用 Path Tracing 计算,并声称为 Rendering buffer 。 这个案例不会提及 Displacement 。
在这里插入图片描述

再次复制 Base_Color Node 后命名变更为 Roughness ,指定 Texture 路径。
Roughness Map 是单通道,根据需求添加 Luminance node ,连接到 Roughness 的 Result RGB 就会变成单一通道信息化。

连接 Normal Map 。
在这里插入图片描述
添加 PxrNormalMap Node 后指定 normal map texture 路径,连接到 PxrDisney1 的 Bump Normal 。

Metallic Texture 没连接。 Jade 材质本身的 Metallic 值刚开始就设置成了 0 ,所以可以直接用 Constant value 本身。
在这里插入图片描述
为了做 preview rendering, Bump Scale 设成了 2。
Bump Orientation 值设置成 OpenGL 。
在 SD 制作 Jade 的时候, Normal map 是以 OpenGL 为准生成的。

利用 RenderMan IPR 做的实时 preview rendering。

在这里插入图片描述
做个测试渲染会发现色彩空间不正确。
Renderman的 PxrTexture Node 基本上 sRGB to Linear 是 False 。

PBR 渲染里 Linear Space Rendering 是很重要的概念,详细的概念在前面的章节已经讲过,再重新看下吧。
首先 Base Color 是材质的漫反射颜色。
因为这不是记录 Shader 或 Material 的 PBR 信息的贴图,所以一定要进行色彩空间变换。
在这里插入图片描述
点击 Base_Color Node 和 AM_Map Node ,两个都 Check Linearizer Toggle 。
在这里插入图片描述
普通 Linear Space rendering 结果。
Base_Color 和 AO_Map 都执行了色彩空间变换,现在材质正确的渲染完成了。

再扩展,变更 Tone Mapping 后观察下。
在这里插入图片描述
主要用在 HDTV 等地方的 Rec709 结果。

在这里插入图片描述sRGB 和 rec709 对比可以在 View / Display View 菜单确认。

最终高分辨率渲染结果。

在这里插入图片描述
使用 RenderMan 的高分辨率渲染。

在这里插入图片描述
Substance Designer 里的标准 PBR 实时渲染。

在这里插入图片描述
使用 Nvidia Iray 的渲染。

以外的参考知识。

在这里插入图片描述
来变更下 Tone Mapping 方式。
是最近在 PBR Rendering Framework 备受瞩目的 ACES RRT v1.0 。 (现在是 UE4 的基本方式)
ACES RRT v1.0 Reference 를 잠깐 살펴 보자.
来看下 ACES RRT v1.0 Reference 。
float3 ACESFilm(float3 x)
{
float a = 2.51f;
float b = 0.03f;
float c = 2.43f;
float d = 0.59f;
float e = 0.14f;
return saturate((x*(ax+b))/(x(c*x+d)+e));
} 出处 : https://knarkowicz.wordpress.com/2016/01/06/aces-filmic-tone-mapping-curve/

在这里插入图片描述

出处 : https://knarkowicz.wordpress.com/2016/01/06/aces-filmic-tone-mapping-curve/

在这里插入图片描述
为了理解线性渲染工作流,介绍一个读一下会有帮助的案例。
在这里插入图片描述
出处 : Renderman.pixar.com
https://renderman.pixar.com/color-management

此外的参考知识2.

简单设置 PxrPathTracer。
在这里插入图片描述
修改 Node Editor 里可以看到的 PxrPathTracer ,可以控制渲染速度(性能)。

PxrPathTracer 的生成。

在这里插入图片描述
打开 RenderMan Rendering Option 窗, Integator 选择为 PxrPathTracer 就可以看到 Node Editor 里生成了 PxrPathTracer 。
在这里插入图片描述
通常 Max Depth 会对渲染速度有最大的影响。
意味着 Path tracing 的光线追踪(Bounce) 次数的最大值。

在这里插入图片描述
Russian Roulette 的 Depth 值低于 4 后,渲染速度虽然变快了,但是会生成很多 Noise 。
以上数值在 IPR 渲染状态下几乎没变化,在 Production rendeing 状态会有差距。

About JP

链接: Website.
在这里插入图片描述
在这里插入图片描述
出生在韩国的TA。
1997年开始从事电脑图形视觉化工作后,在这个行业已经有21年经验了。
在多个网络游戏公司引领过美术团队,之前在allegorithmic担任TA负责人,在中国网易盘古工作室担任TA总监,现在是巨人网络TA部门的总负责人。
懒惰的人才有创意”是他坚信并执行的哲学道理。

猜你喜欢

转载自blog.csdn.net/qq_39812022/article/details/101524185
今日推荐