【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

在以游戏开发者为主的讲座「CEDEC 2023」当中,由GAME FREAK 的前泽圭一带来了以「《宝可梦朱/紫》绘出帕底亚地区—— 彻底解说视觉表现的机制!( 【ポケットモンスタースカーレット・バイオレット】 パルデア地方を描き出す――见た目の仕组みを彻底解说!)」为题的演讲,讲述以「从美术风格就可以知道是哪部作品」这个观念为前提开发的《宝可梦》系列,是如何打造《宝可梦朱/紫》的宝可梦、主角、整个世界的各种构成,从着色器处理到资源建造,彻底解说其中的奥妙。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

根据前泽所述,《宝可梦 朱/紫》设定的美术概念为「拟真与变形(リアルとデフォルメ)」,也就是让背景的质感与形状接近现实做为目标。但是由于宝可梦与人物角色等会简化,所以必须要找出将它们统整放在一起时会出现破绽的地方才行。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

美术概念

现实与简化

  • 希望背景的质感与形状等,要比前作更接近现实
  • 但是,由于宝可梦与人物角色并不会弄成完全真实风格,因此必须要找出在背景与角色统一放在一起时会产生的破绽

质感

  • 基本上接近现实就好
  • 必须要思考如何调整轮廓与背景融合

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

素材

  • BaseColorMap
  • NormalMap
  • MetallicMap
  • RoughnessMap
  • EmissionColorMap
  • AOMap

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

使用 Gbuffer

  • 利用 Flags 使处理分歧(也收入在模板)
  • 以 Mesh ID 为基础并抽出追加情报

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

可使用的光

  • 定向光源(太阳光等)
  • 点光源、聚光光源
  • IBL
  1. DiffuseProbe / SpecularProbe
  2. IrradianceVolume

      —— 用在前作(《阿尔宙斯》)

      —— 在本作不使用

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

点光源

  • 使用在城镇的灯光等

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

IBL

  • 由于时间带的变化,要以作出灰阶影像 DiffuseProbe 并另外叠上颜色。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

打灯光

  • BRDF(基本呈现)

镜面反射:GGX

扩散反射:Lambert

  • 半透明放在最上层

在演讲首先展示了素材的构成与光源等,并且在介绍整个作品中基本的表现方法时,也顺便解说了使用在宝可梦身上的特殊手法。

而提到宝可梦主要的外观就先提到的便是 SSS(Subsurface Scattering)的阴影呈现。这套阴影系统会根据宝可梦的身体大小与密度等进行配合,套用各式各样的设定,对宝可梦的造型个性造成巨大的影响。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

SSS

  • 使用接近 Pre-Integrated Skin 的手法,在阴影部分使用散乱色渗出的效果
  • 避免使用 LUT texture,并使用 Spherical Gaussian 进行近似计算

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

  • 根据身体大小变化数值

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

  • 左图:厚度跟密度等较薄的部位数值调到偏亮
  • 右图:眷恋云「白色」的地方也会因应头部的毛跟云而利用数值设定区分

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

胶状物

  • 只在轮廓附近适用 SSS 呈现质感,表现出只有外侧呈现出透光的效果以模拟质地
  • 轮廓部分,单纯以视角跟法线的角度为基准抽出

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

构造色

  • simulation base 的手法,因为表现的自由度等观点而放弃采用
  • 以视角与法线的角度为基础再加上三色渐层,使用简单的功能进行

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

粒子

  • 左:粒子的 texture 种类动画(4*4=16 种类)
  • 右:指定深邃感(视差的强弱)的 texture

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

火焰(头顶的动态物件)

  • 在 Displacement Map(左)用顶点色(右)乘算,用来控制影响程度

其他也有介绍如何表现出凝胶般的质感、构造色的呈现,还有悖论宝可梦的粒子呈现等各式各样的手法,并且提到了《宝可梦朱/紫》最大特征「太晶化」的相关表现。

当宝可梦太晶化,便是将本体(也就是宝可梦)的部分保持原本的模组并更换素材,配合 Normal Map、Color Map 与杂讯纹理,就可以呈现出宝石的质感。不过,如果将所有物件都宝石化的话,反而变得不美观,所以也做出了能够指定「不要」太晶化的 Mesh。

另外,在太晶化的时候出现在宝可梦头顶的太晶宝石,其实是将表面的 Mesh 设成半透明,而里面的 Mesh 设成不透明,借此产生出深度并呈现立体感。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

太晶化(本体)

  • 左:用在表现质感的 Normal map
  • 右:从左边开始为
  1. 用在表现分散光的 Color map
  2. 让边缘(エッジ)发光的 Normal map
  3. 放在边缘(エッジ)上的杂讯纹理

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

  • 可以指定「不要」太晶化的 Mesh

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

  • 里侧与表面还有 Sphere Map

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

太晶化(完成)

接着则是展示关于主角(人物)角色相关的呈现手法。首先从在游戏一开始可自定义的主角「造型」是如何呈现的。

《宝可梦 朱/紫》在创角的时候能够选择的各种眼眶与眼睛大小等,其实是使用 Maya 的 Lattice 功能制作的。使用这个功能就可以控制眼尾的上下或眼睛、嘴巴的大小、嘴唇的厚度等。不过,如果全部的细节都可以调整的话会变得太过繁杂,所以事先准备了配合各种变形值组合的预设值。

另一方面,虽然眉毛基本上是以 texture 描绘,不过藉由在前端使用 α 做出阶层,就可以做出眉毛长度的不同版本。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

眼帘、嘴巴的自定义

  • makeup_all

自定义角色用的 Lattice 本体。能直接把 Mesh 变形

  • makeup_eye

控制眼帘的 Lattice。控制 makeup_all

  • makeup_mouth

控制嘴巴的 Lattice。控制 makeup_all

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

眼睑的 Lattice 种类

  • 可以设定各种眼睛大小和形状

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

嘴巴的 Lattice 种类

  • 可以设定嘴巴大小和嘴唇的厚度

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

混和以上种类

  • 定义预设值

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

眉毛、睫毛的种类

  • 基本的种类以 texture 制作
  • 根据各种类,以设定 α 增加版本

另外,表情则是将脸分成五个部分之后以变形目标(Morph target)制作。最一开始套用变形目标,接着再用刚才提到的 Lattice 功能进行演算,就可以实现实际角色的脸的形状。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

表情

  • 拆开各部位后以变形目标制作
  1. 眉毛周围变形
  2. 右眼变形
  3. 左眼变形
  4. 嘴巴变形
  5. 加算至整体

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

表情与脸部妆容

  • 依照下列顺序处理。
  1. 将各部位的变形图像合并后,制作变形用的 Mesh
  2. 混和至 BaseMesh(反映表情)
  3. Lattice 变形(反映脸部妆容)

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

眼球

  • 使用非统一比例,让直长型的眼睛也可以转动

而在表现肌肤的部分,则是先做出假的法线,并与实际法线混合。接着,依照脸或视角的角度、光源的方向等各种情况,调整哪个角度才是最为美观,再控制光的反射度,不断重复尝试,才终于达到开发团队希望的美术概念。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

shade(伪装法线)

  • 伪装法线 N0 = normailze (P0 – O)
  • 把基准点 O 跟 “head”joint 连动

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

shade(风格调整)

  • 以条件跟参数,跟实际的法线进行混合

脸跟摄影机的角度

顺光或逆光

  • 下方图片:根据参数产生变化的结果

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

光的反射调整

  • 和模型的风格不符,看起来完全不像「皮肤」

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

  • 将 dot (normal, light) 的结果补正得更滑顺

最后则是讲解在打造帕底亚地区的世界时,如何呈现各种环境的相关手法。

首先是大地(地图)的制作方法。帕底亚地区的大地,是以 Maya 的 Mesh 为基础,再利用 Houdini 追加细节,然后选择 High tMap 与质感,或是输出长出花花草草的 Mask。然而,光只用这样的方式也有无法完整呈现的地形,所以会在之后利用 Houdini 进行程序建模弄出悬崖或岩石等再配置于地图上,慢慢打造出想要的地形。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

大地的制作方式 1/3

  • 以 Maya 的 Mesh 为基础,再利用 Houdini 追加细节

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

大地的制作方式 2/3

  • 从 Houdini 输出 HightMap 与 Mask

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

大地的制作方式 3/3

  • 用 SplatMask 选择质感
  • 用 DetailMask 长出花草
  • 把悬崖或岩石从上面放置

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

悬崖&岩石

  • 利用 Houdini 进行程序建模
  • 加上形状、输出素材混合等参数的 Mask

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

  • 将产生的 Mesh 利用 Maya 加工等情况,就使用只再生 Mask 的工具

接着是关于海、河川等水边的呈现。这部分会根据顶点动态的动作、流型图的流动,还有依照水深的透明度变化、萤幕画面空间的折射表现等而配合,进行基本的处理。甚至也特地准备了浪潮拍打岸边时白色波纹的专用模型,让其越靠近陆地时就有越大变化,以强调「拍浪感」。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

海&河川

  • 以 Gerstner Wave 为基础的顶点动态
  • 根据 Flow map 表现出流动
  • 因应水深改变透明度
  • ScreenSpace 的折射表现

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

  • Normal Map 与 Flow Map
  • SpecularProbe 的 texture 以手绘制作

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

开发成员还说「我们在这真的下了很多工夫,请一定要介绍这部分」

  • 利用专用的模型追加白色波纹

接着是天空,为了要从水平线延伸出颜色的渐层,则是以 Precomputed Atmospheric Scattering 等新技术为基础呈现。在云层的表现上,先将在建模完成的云上从六种方向打光后的结果压制成两张 texture,并且以真实世界的光为原型计算描绘色。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

天空

  • 以 Precomputed Atmospheric Scattering 等技术为基础,然后再加上特定的渐层处理

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

云朵

  • 在 Houdini 将一团云用离线彩现

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

  • 把从六方向(±xyz)打光后的结果,再压制成两张 texture
  • 贴上 Billboard 并以光源向量为基础计算描绘色

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

建筑物内则是简单用光线映射表现出来

室内

  • 建筑物里面使用光线映射表现
  • 根据昼夜变换有各自的资料
  • 乘算至 Base color

以上就是本次「《宝可梦 朱/紫》绘出帕底亚地区 —— 彻底解说外观的构造!」的演讲内容了。在本次的演讲中,可以感受到开发团队是如何用尽了各式各样的表现手法,进而呈现出《宝可梦 朱/紫》里帕底亚地区光鲜亮丽的一面。

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

【CEDEC 23】《宝可梦 朱/紫》以拟真世界为目标 彻底解说帕底亚地区的绘制方法

本文为任天饭原创编译,未经授权禁止转载
(0)
上一篇 2023年9月1日 上午10:05
下一篇 2023年9月1日 上午10:31

相关推荐

发表回复

登录后才能评论