《逆水寒》的角色扫描数字化经验复盘。
近些年来,游戏行业的竞争可以说日益激烈:单个游戏项目的成本攀升至亿元级别,人员规模动不动就几百人以上。在这样一种情况下,如果美术资产还需要全部靠人力去堆,显然就很落后于时代了。我们需要去思考如何借助更先进的工具和技术来优化制作流程,提升生产力,提高制作效率。
扫描技术就是一个特别好的工具。在过去的二十年里,3D扫描技术不断发展,应用领域也不断拓宽。医疗、建筑、设计、教育,到现在也有越来越多的游戏项目开始引入这项技术。雷火艺术中心此前也搭建了公司首个3D扫描实验室,并在《逆水寒》端游近期的开发过程中开始尝试去应用,升级我们的研发流程。
本篇文章就是对《逆水寒》这半年来角色扫描数字化的一些成果展示和经验总结。我们邀请了几位同学,分别从扫描流程、角色设计、饰品配饰、刺绣纹理、材质贴图五个方面,详细地为大家带来讲解与剖析。如果你对于扫描的全流程制作非常感兴趣,那这篇文章也许可以帮到你。
扫描流程篇 by 拿铁
扫描流程篇,我们将会从服装扫描、服装处理、引擎效果、延展思考这四个方面,全流程地对3D扫描时装制作进行讲解。
服装扫描
服装扫描的步骤一般是:1、按需采购;2、匹配服装尺码;3、褶皱处理;4、多版本输出。
1、按需采购
首先,根据项目的要求定制,或者在网上购买、租赁,拿到和项目需求类似且符合扫描要求的布料衣服。
2、服装尺码
在尺码上我们也需要找到和着装裸模尺码大小一致的尺寸。以《逆水寒》为例,我们使用的通用模特男装大小是M码,女性是S码。
目前我们都是在使用1:1比例的3D打印模特来着装,所以我们在购买服饰的时候都有一个标准尺码,不用担心买的衣服穿不上。
3、手动塑型
着装完成之后,我们还需要根据设计的要求,以及原画与模型同学的理解,进行褶皱的造型处理,这一步也是关系到最终成品效果的一步。在手动塑造的过程中,我们一般会借助一些辅助小工具来帮助塑型,类似我们在zbrush中自己手动雕刻,或者在MD中进行造型调整这样。不一样的是,一个是在软件环境中,而现在是直观地通过你的双手来调整、拉拽,最终得到一个满意的版本。
手动塑形的结构质量等同于最终品质,所以如果服装的褶皱太多影响效果的话,我们也是可以通过蒸汽熨烫等方式,去除表面的不平整的。
4、多版本输出
如图,我们这两次的扫描任务中根据需求把服装进行了单件拆分扫描。这样的灵活制作,不会出现服装遮挡部分没模型的情况,同时这些完整模型也可以被后续制作使用到。
服装处理
拿到扫描室的扫描数据资源之后,后面就需要开始优化制作了。目前我们的流程分为:1、筛选最优区域;2、匹配裸模、骨骼;3、模型优化;4、细节处理。
1、筛选最优区域
在服装静态扫描中我们提到了多版本输出,在扫描之前会根据造型不同多出一个到两个版本,为后期制作时提供更多选择。如图就是通过两个版本的上衣和裙子进行融合的一个结果,在手动摆造型的时候,我们可以排列组合每一次的扫描,最终找到最理想的效果。
2、匹配裸模、骨骼
合并好的模型通过裁入项目裸模,进行合身着装。
3、分块优化处理
为了方便调整与雕刻,合并好体态的模型我们可以通过独立模块切分,分成几个大的结构,这样我们在雕刻和调整的时候也比较方便。
4、细节增补
完成基本的造型调整和优化之后,我们会根据基本材质,通过置换图的方式对不同材质进行细节与质感的增补,这样可以让整体精度和完成度变得更高。
5、高模效果
通过上面的一系列流程,最终就能得到下面这样一个高模效果了:
引擎效果
这是这次最终做好的一个引擎截图效果,可以看到效果是非常棒的。
贴图中看到的平铺细节纹理我们也使用到了扫描技术来增强贴图效果表现力。
通过这次融合扫描的流程,也给我带来了一些不同的思考与理解,总结在下面带给大家。
延展思考
人天效能:目前我们传统的制作流程,一般一个类似的角色服装,从高模到低模烘焙都会在15人天左右;而本次的扫描流程,我们得到一个大体可用的高模低模只需要9人天,基本缩短了一半。在适用性强的角色身上,这个流程的人天效能确实得到了成倍的减少。
品质提升:通过扫描得到的模型,除了上文提到的高效之外,同时品质的提升也是肉眼可见的。如下图,左边是之前传统外包制作的品质图,和新的流程对比,可以说差别是比较大的。
内部流程提升:如果是传统流程,首先在3D验证2D的设计合理性这个环节,就会消耗非常多的时间。而扫描流程的话,则不需要相互等待,可以很快地推进制作进度。如果可以统一采购大量时装的话,甚至可以做到一天扫描多套输出。
外包流程提升:以《逆水寒》为例,从下图右侧的饼状图可以看出,在模型反馈的占比当中,布料类能占到6成甚至更多。这是因为发型发饰和金属类基本上通过设计图的引导都可以很精准地完成制作,但是布料却不行,你需要思考很多东西,比如布料的节奏与层次。所以接口人往往会在这一部分花费大量的时间去找参考、P图做引导,造成效率的低下。
而现在,只需要制作人员对于各个软件有相对的熟练度,也不需要花费大量时间去研究每个结构的设计方式,只需要对现有精度做减法,然后优化穿帮的地方就可以了,这样可以极大地节约人天成本。
当然,扫描流程也并非是十全十美的。我接触下来,总结出的弊端其一:你扫描的资源越接近你的项目需求的档位,那你花在修复和处理上的时间成本就越少;相反,就会产生比较大的修复工作量。所以这对于资源的寻找提出了很高的要求。
弊端其二:太过于流程化了之后,会缺乏一些独立思考和设计的环节,所以不太利于制作者的个人发展跟能力的提升。
角色设计篇 by 小苏打
前面我们说了一下角色服装扫描的大致流程,那么这一部分我们将会聊一聊引入3D扫描技术之后,角色原画同学的工作会产生一些什么样的变化。我们会分为两个部分进行叙述:一是原画在扫描时装流程的素材选择上需要注意的地方;二是总结了扫描技术对角色原画设计的影响,并分析了优缺点。
还是拿这一次藏民风格的设计来举例,由于题材的特殊性,原画需要还原真实藏民的服装,所以参考了大量的藏民照片和相关资料,为扫描模型做一些前期的准备工作和方向参考。
原画在扫描时装流程中的素材选择
关于藏民服饰
首先阅读需求,大概确定了策划想要的款式,结合策划的配图去找相关的参考。不过在找参考的过程中也遇到了一些困难。
比如藏族服装本身也有各种不同的服饰圈,网上的图片也鱼龙混杂,在参考的选择上要认真辨识是否是符合要求的康巴藏族服装。比如有些藏族服装其实属于舞台和摄影服装,装饰性强但穿着搭配并不严谨。而有一些虽然是真实的藏民服装,但并不是我们想要的康巴藏族服装,而是属于青海地区的藏民。在寻找参考图的时候,一定要注意严谨。
原画阶段
根据策划的文案和参考画了两个草图,主要是表达整体的气质,整体款式较为宽松肥大,有精致的花纹和金属饰品,有夸张的头饰和项链,并搭配了可换的发型。
按照传统流程,这个完成度是不够的,衣褶表现太过简单,也没什么布料效果表现。但因为要使用扫描流程,所以衣褶饰品塑造得过细反而会浪费时间。腰间的装饰考虑到可能买不到实物,所以画得仔细了些,最后也确实没有找到实物扫描,还是按照原画来建模。
包括扫描后的服装模型必须要经过修改才能使用,所以还是需要原画把控最终效果,以免出现无法扫描和制作模型的情况。
下图是喇嘛NPC的原画,因为真实的喇嘛服装在游戏中会出现动作绑定方面的问题,所以在原有的基础上进行了主观的修改。考虑到游戏内表现,袖子披肩部分修改成了利于活动的设计。为了表达等级感,高级喇嘛在低级喇嘛的基础上添加了层次、颜色和装饰,如喇嘛帽和佛珠项链等。喇嘛的衣服在网上都能买到,参考原画的披肩缠法将布料在人台上缠绕。由于布褶造型很丰富,感觉扫描出来效果还是不错的。
扫描素材的选择
关于如何获取这些扫描素材,你可以去各大购物平台看一看。由于扫描的衣服基本也就使用一次,所以购买会有些不划算,可以考虑租赁。或者直接借用身边同事朋友的,比如大宋映画中制服鞋就是借同事的鞋扫描的。
如果找不到合适的成品扫描,还可以定制素材。例如杭州的服装定制工作室就有很多,如果有需要可以先定制好成品再进行扫描。
由于模型那边的同学会有很多关于面料材质的规范,所以我在这里也总结一些建议扫描建模的款式:
- 牛仔外套,工装服等结构复杂的款式;
- 布褶堆积多的款式;
- 剪裁讲究的西服类。
因为我们定制的素体人模比较瘦还很滑,衣服穿上去不会很合身,所以也需要我们手动调整:
- 可以使用夹子或者珠针调整服装的长短。藏服套在人模上之后非常松垮,袖子也非常长,我们用别针把袖子折叠固定,扫描模型后处理一下就看不到固定的痕迹了;
- 需要饱满的造型的话,就往里面塞填充物;
- 就像上一部分“扫描流程篇”提到的那样,想要褶皱可以人为制造,想要平整可以熨一下。
在这个过程中原画可以直接参与进模型流程中,不再是以往原画要等模型出一版之后才能进行反馈,可以很大程度上减少后续反馈的时间。
扫描技术的介入对原画设计的影响
优点
优点一:精致度提升,效率高,节省了原画环节耗费的时间。精度很高的刺绣图案和饰品在原画环节是十分耗时的,可能占了50%的时间都不止。此外,由于复杂的花纹耗时长,还要单独开单完成。然后可能也会有原画表达不到位,需要和模型反复交流沟通的情况。如果能够买到实物直接进行扫描,将大大提升原画效率,节省原画反馈模型,并交流修改的过程。
面料材质方面,原画阶段也可以省去复杂面料肌理的效果表现,提供合适的布料扫描就好。或者像本次分享的民族服装案例一样,原画不需要很高的完成度,只要有合适的实物素材,就能得到超越原画表现的模型效果。
优点二:基础款式可以直接扫描,直接省去原画阶段,原画可以在扫描出的模型基础上修改。
完全写实的游戏,角色的穿着都是在现实能找到的服装,可以全部通过扫描技术来制作,原画只需要画一个搭配示意图就好。像高级西服这种服装剪裁比较讲究的,如果模型同学没有相关的服装打版知识,也完全可以通过扫描来制作。像此类可以完全扫描实物的时装,只需要原画在模型之后修改些颜色,补充些花纹就可以了。
优点三:扫描实物表现出的布褶更自然生动。越是写实的项目,对衣褶表现要求越高,要求就越自然真实。反馈模型的过程中经常会遇到布褶不自然或者堆积过多过少的问题,即使是通过MD计算的布褶,也会经常修改。而通过真实布料和服装的扫描,后期处理一下就会得到很自然生动的布褶表现,很适合需要大量布褶表现的服装。
褶皱经常是原画和模型反复讨论修改的点。因为原画的布褶表现较为简单,有时候模型为了完全复原原画的效果,做出的造型会十分不自然,光是一个小围脖可能就要反复反馈两三次。如下面这张模型图的褶皱效果十分僵硬,如果能使用扫描技术的话,就可以很简单地表现出这种自然的褶皱了。
下图也是一次布料褶皱的反馈。因为是计算的布褶,整体来说比较自然合理。但脖子处的褶皱堆积过于细碎,看起来很累赘。设计时内层服装是较薄,布褶较多的材质,外层堆积的披肩实际上是想要有些厚度,褶皱较少的感觉,实物扫描能做得更好一些。
缺点
当然,缺点也是有的。首先就是题材比较受限,更多用于那些写实的项目。因为扫描出来的东西就是写实的,会有很多细节,所以可能不太适合写实项目以外的团队去做。
第二,网上的素材可能会有版权问题,直接扫描品牌服装和刺绣花纹可能会侵权。
第三,有可能会限制原画的设计。因为要使用扫描技术,那设计就不能够太脱离现实,画的款式也尽量能在现实中找到,那就需要拉齐各方提前沟通。
饰品配饰篇 by 小歌
配饰篇会分为以下几个部分讲述:扫描模型分析、复用高模处理及修复、破损重新模型处理、扫描模型花纹处理。
扫描模型分析
首先,我们需要拿到zbrush高模扫描模型和扫描模型的高精度贴图文件。当然也可以单独扫描一张平铺的花纹,这样贴图就可以直接拿过去用,方便快捷精度高。比如下图第三个文件就是衣服的扫描花纹,帽子并没有单独扫描,所以我们还需要重新把扫描模型的花纹给烘焙出来。之后,我把扫描模型做了一下拆分,分成下面两部分:绿色区域的是可复用的布料高模,头上的部分则需要重新搭建模型。
下面是我拿到的花木兰戏曲帽子的扫描模型,相对传统流程而言整个制作速度非常快。
或者,你也可以用zremesher重新布线替代四边形插件,然后平面UV也可以用zbrush里面的变换UV然后导出模型的方式。
对比了一下两种方式,在MAYA里面更方便快捷一些。
复用高模处理及修复
下面是戏曲刘大哥从扫描到模型制作的过程:我们先拿到扫描模型,然后根据扫描模型重新拓扑出横平竖直布线的模型(当然,这个模型也可以当低模用),然后在zbrush中逐级映射扫描模型高模,最后修复得到比较自然的高模褶皱。
破损重新模型处理
相对传统流程的好处是,只需要还原扫描模型就好,不需要太多思考的地方。
传统制作需要从三维角度去还原原画,往往多个角度会有偏差。
这么高精度的细节高模如何处理好还原到低模上面呢?
首先,我做了拆分,把细节的花纹做一张1024的贴图,然后金属布料做一张1024的贴图,把布料的UV面积尽可能地缩小一些(因为这些布料可以在《逆水寒》编辑器用到细节法线变现,UV的占用面积不用太大),大的UV面积都分给头饰上比较重要的地方。
扫描模型花纹处理
下图左边的是扫描的花纹,右边的是原画设计的花纹。扫描的花纹精度高,细节丰富,质感更强,稍微调整一下就能出很好的效果。而原画设计的花纹颜色单一,需要后面去丰富一下颜色变化;而且也缺乏一些细节,需要后期手动增加细节变化。
衣服胸口的花纹就是扫描的高精度纹理:
而花木兰这种没有刺绣的我们要怎么做呢?
我把模型拆分成两部分进行处理:帽子中的花纹做一整张处理,其他做一整张处理,相当于增加一张贴图把复杂的帽子细节给还原出来。
同样的时间,扫描流程可以制作更多的细节,更加精致的模型,对于制作人员的要求也不是很高,只需要还原扫描模型的造型和剪影即可,也相应地减少了原画和模型之间的反馈时间,减少沟通成本。
刺绣纹理篇 by 九色鹿
刺绣纹理篇,我们会从光度立体、纹样、和纹样使用三个方面,由原理到纹样的形成,再到最终具体项目使用的技巧,让大家全方位了解扫描纹样的构成原理与扫描刺绣的处理方式。
光度立体
光度立体是拍摄扫描纹理的前置理论基础,我们通过基本原理和成像法则的梳理,让大家先简单地了解一下形成原理。
光度立体的基本原理
该技术最初是由伍德汉姆(Woodham)在1980年提出的。相机和物体相对位置不变的情况下,通过不同方向的平行光源获取的二维纹理信息可以提取出三维模型(至少需要三张或者多张)。获取的这些二维纹理生成的三维表面信息可以进一步整合得到高度信息与灰度值。
成像法则
如图这是我们八方位拾影成像设备在处理一组扫描纹理信息过程中的基本光照和拍摄原理。在灯光和拍摄距离确定的情况下,通过一组拍摄了八张不同方位光的图片,进行表面法线的计算,得出中间法线图的效果。
案例图
这是一组从金属配件到植物与花纹的三组效果图。摄像机通过不同角度灯光拍摄得到的二维图经过计算之后,得出表面物体的高度信息。可以类比一下:如果电脑是人类的大脑,摄像机就是人的眼睛,灯光就是太阳光。
八方拾影成像设备
图中出现的黑色笼子是我们雷火3D扫描实验室的同学根据光度立体原理动手自己搭建的八方拾影成像设备,目前可以支援各个项目的场景类需求(如各大类别植物、树叶、花朵、各种单片构成物体),以及角色类需求(如单独、二方、四方连续花纹与刺绣等)。
总结
纹样
纹样我们分为:题材、色彩、构成。
题材的话,主要细分为:植物、几何、动物、自然、器物这几种。这些视觉元素,你经常能在古代的一些衣服纹样上看到。
而色彩,主要分为正色和间色。古人在观察天地运行、日出日落和时序更迭的自然景色中,得出了赤、青、黄、白、黑的五色观色彩理论。另外,古人又根据土木火水金五行法则定东南西北中的五个方位,并与颜色建立关系。同时又把权势地位、伦理哲学、宗教礼仪等多种观点融入色彩中,逐渐整合出了一套独树一帜的色彩文化体系,最后成为了中华传统文化的重要组成部分。千百年来,我们民族的服饰、建筑、绘画、书法、汉医理论等等领域,都和色彩产生了关系。
正色的对应关系:
间色,由不同的“正色”以不同的比例调和而成,归属为次要的颜色,故又称为“闲色”:
构成分为:单独、二方连续、四方连续。单独花纹一般见于龙袍之类的这种大型单独花纹上。二方连续花纹一般出现在边缘装饰,如服装领边、袖边、铺垫织物侧四个边缘等地方。
而四方连续则使用频率比较高,种类分为:几何、散点、连缀。几何又分为下面几种:八达、四达、八角、菱形、龟背、方形、球路。散点的话,分为单元,图纹,禽鸟类规则排列;团纹,折枝,禽鸟不规则排列。连缀,则有缠枝、穿枝、波纹。这些内容在《中国古代丝绸设计素材图系》这套丛书里都有很好的记载,有兴趣学习的朋友可以找来阅读。
扫描纹样使用
以下是三个实际扫描处理的案例。可以看出,我们还是要知道四方连续的基本构成这样的基础知识,才能在实际使用的时候得心应手。
下图左一红色框选部分就是最终四方连续的基本构成,所以我们只需要红色的部分即可。
如下图红色部分也是我们最终四方连续要使用到的部分:
同上:
刺绣纹理篇·总结
材质贴图篇 by 脩远
传统刺绣的表现手法
传统的刺绣表现手法,包括彩绣 、包梗绣、雕绣:
贴布绣、钉线绣、十字绣:
绚带绣、抽纱绣、戳纱绣:
扫描刺绣在游戏中的还原效果
因为扫描花纹会受到光影效果的影响,会出现花纹色彩不均匀的现象,包括花纹形状大小也会受到外力影响导致出现变形,所以后期需要调整修改好。然后游戏中由于透视问题,有些现实中较细的花纹也需要在游戏中适当放大才能凸显出来。
刺绣法线效果的表现形式
因为扫描花纹受光影效果影响,转出来的法线会比较平,缺少立体感,所以在处理这些法线时可以先转一个比较立体的法线,再用原来的扫描花纹叠加上去,以此来增加刺绣花纹的立体感和刺绣的细节。
刺绣针法的表现
因为要保留刺绣效果的真实性,所以diff图基本上就是扫描的原色,没有改动过。后期只能在spec以及gloss上进行细节处理。
- spec上对于花纹的边缘用宽一点的笔刷进行外轮廓的绘制,内部则是根据花纹的不同,调节笔刷宽度进行制作,以此增加笔触粗细变化。
- gloss上制作时要注意笔触间的距离,以此来实现刺绣光滑度的变化。
根据材质属性,拉开层次。刺绣花纹一般光泽度高一点,衣服时装光泽度要低一些。另外,即使刺绣之间内也要有层次之分,这样刺绣效果才能随着光源变化有层次,否则就太平了。
游戏中刺绣效果鉴赏
结语
3D扫描技术的应用,对于亟需提升工业化能力的游戏行业来说只是一个开始。游戏产业的升级,它不单单只是某一个环节需要思考的问题,而是需要上下游,乃至跨部门的通力合作才能从根本上改变的问题。希望读完这篇文章,能让你对3D扫描的全流程有了更深刻的认识,也希望大家在日常工作中能够多多思考,还能怎样优化自己的工作流程,提升工作效率,为玩家带来更多更优质的游戏。
来源:网易雷火艺术中心
有话要说...