高考考试网
当前位置: 首页 高考资讯

unity3d像素游戏制作(米哈游技术总监分享)

时间:2023-05-27 作者: 小编 阅读量: 7 栏目名: 高考资讯

《八重樱·桃源恋歌》米哈游,在业届素有“一家被游戏耽误的动画公司”之称。米哈游使用Unity实时渲染的MMD次世代动画短片《八重樱·桃源恋歌》,今年2月在B站发布以来,获得了260多万的播放量。他致力于使用Unity做出高品质的卡通CG渲染。贺甲:《八重樱·桃源恋歌》短片参与人员共20人,其中包含程序8人,其余为美术,但实际项目仅6名美术全职参与,其余人员则为兼职。2018年6月开始制作,2019年1月完成,历时半年。

《八重樱 · 桃源恋歌》

米哈游,在业届素有“一家被游戏耽误的动画公司”之称。在Unite 2018大会中,米哈游技术总监贺甲就曾分享过《崩坏3》:在Unity中实现高品质的卡通渲染。

本文将由米哈游技术总监贺甲分享米哈游最新动画短片《八重樱 · 桃源恋歌》中的制作技术。

米哈游使用Unity实时渲染的MMD次世代动画短片《八重樱 · 桃源恋歌》,今年2月在B站发布以来,获得了260多万的播放量。

《八重樱 · 桃源恋歌》这部短片,对于玩家来说绝对是一场美的享受,而对于从事Unity开发者来看,这部短片中的模型角色,动画渲染的技术绝对顶尖。

米哈游技术总监 - 贺甲

访谈嘉宾:贺甲拥有中国科学技术大学硕士学位,曾担任英伟达半导体科技的研发工程师,现任米哈游技术总监和美术指导,并专注PBR、NPR卡通渲染、过程动画及可交互物理等实时渲染领域。他致力于使用Unity做出高品质的卡通CG渲染。

技术访谈

米哈游创作《八重樱 · 桃源恋歌》短片的初衷和背景是什么?

贺甲:《八重樱 · 桃源恋歌》短片参与人员共20人,其中包含程序8人,其余为美术,但实际项目仅6名美术全职参与,其余人员则为兼职。2018年6月开始制作,2019年1月完成,历时半年。

我们主要是希望通过结合最新的技术来探索新的渲染风格和表现的可能性,以及积累Unity引擎实时渲染制作CG动画方面的经验。

大家对于《八重樱 · 桃源恋歌》的认可,同时也验证了米哈游对于技术研发和美术结合的把控能力。

为什么选择Unity进行实时渲染创作这部短片?

贺甲:我们对Unity整套渲染流程做了全面的定制化处理:渲染管线、材质系统、特效表现及整套后处理流程围绕最终表现完全重写,这些高度定制化的内容在Unity上是相对易于实现的。

使用Unity 2018,我们基于Unity默认的HDRP高清晰模版进行定制化开发,并制作了专门的Shader。

使用实时渲染引制作动画短片无论从渲染开销还是效果调整迭代成本是极低的。渲染效率自然不必多说,从迭代效率的角度而言,我们可以直观的以所见即所得的形式去调整镜头,灯光,材质等效果。

我们使用了Unity Asset Store资源商店的插件AVPro Capture,只需2个小时就可以输出一个4K 60fps 5分钟规格的视频进行最终效果迭代,这相对于传统流程来说都是不太可能做到的。

我们的制作团队也是一个比较年轻的团队,正是因为上述优势使得这部短片的制作成为可能。

Unity中HDRP高清晰渲染管线在这部短片中具体体现在哪些方面?

贺甲:在《八重樱 · 桃源恋歌》之前,我们曾使用Unity的默认渲染管线渲染过另外二部短片《琪亚娜·极乐净土》和《芽衣·染上你的颜色》。

在开发过程中,我们遇到了很多在默认管线下开发的局限性。这些局限性主要是由于默认渲染管线的高度封装,使得我们无法自由地控制许多效果的渲染。

首先,遇到的问题是无法精确控制光源。

为了实现高质量的角色阴影,我们需要为角色指定某个光源,并在渲染时判断当前光源是否为角色主光源,是则使用高质量阴影贴图,否则使用内置的默认阴影贴图。

Unity的默认管线无法让我们方便地遍历整个光源列表,并且无法在Shader中得知光源与场景中实际光源的对应关系,这使得我们无法在多光源下灵活地兼顾角色自阴影和默认阴影。

在新的HDRP高清晰渲染管线中,所有的光源列表可以在一个Pass中遍历完成,同时可以依靠光源ID判定是否为角色主光源,从根本上解决了我们的问题。

其次,在Unity的默认管线下,我们无法灵活控制很多渲染。

例如:Camera depth texture、Camera depth normal texture、Camera motion vector texture等,这些Screen space textures通常是由Unity使用Replacement shader来渲染的,对用户来说几乎是完全黑盒的。

为了实现风格化的卡通渲染,我们需要高度定制化这些纹理的渲染。

角色渲染需要使用额外的Pass来实现描边效果,而Replacement shader无法支持多pass渲染,这使得很多屏幕特效在描边处会有问题,例如DOF、TAA、SSAO等。

尤其是,描边区域对TAA的质量有很大影响,为了为描边区域渲染正确的Motion vector,我们需要拿到前一帧Skinned mesh的normal、tangent等数据。如果使用了ABC格式的网格或者对偶四元数,我们甚至需要更多的数据。

我们无法在Unity的默认管线下方便地拿到这些数据。但是在HDRP高清晰渲染管线下,我们可以通过自定义的Lightmode和Shader来完全控制这些纹理的渲染,极大地方便了我们的开发。

此外,HDRP高清晰渲染管线让我们可以在场景中使用大量实时光源,Hybrid Deferred & Forward rendering大大增加了渲染的灵活性。得益于Tile & cluster lighting,即便是需要使用forward rendering的物体,也可以高效地使用大量实时光进行渲染。

SSR和SSAO等一些屏幕后处理效果,在HDRP高清晰渲染管线下可以同时正确地应用于Deferred和Forward rendering上。而在Unity的默认渲染管线中,这些效果对Forward rendering都很不友好。

灵活的渲染管线可以让我们高度定制许多风格化效果,例如风格化的Lighting、雾效、Decal system等。

总体而言,原先Unity默认的渲染管线由于高度封装性给渲染开发造成了很多障碍,使得很多效果的高效实现变得束手束脚,甚至无法实现。

新的HDRP高清晰渲染管线使用了更加先进和通用的渲染架构,给了开发人员极大的自由度和开放性,这对于实现高品质的游戏或影视渲染都是至关重要的。

尽管目前HDRP仍有很多底层渲染是黑盒的,很多渲染API也仍未开放,功能也尚未完全稳定,但我们相信对于有能力的开发团队来说,HDRP高清晰渲染管线绝对是未来Unity下高品质渲染的最佳选择。

这么漂亮的布料解算是怎么实现的?

贺甲:布料部分我们使用Qcloth做解算,通过Alembic格式导入Unity。

Abc动画文件的大小和模型面数有很大关系,我们把布料主体控制在2W面左右,基本可以保留褶皱模拟所需要的网格精度。要保证表面的平滑则需后续在渲染的时候做曲面细分,这样4分钟30fps的动画数据大概只有1G大小,是一个相对适中的大小尺寸。

导入Unity引擎后,我们使用自定义实现的基于GPU的Catmull-Clark Subdivsion以渲染出绝对平滑的布料表面,整套流程从表现方面非常令人满意。

由于是离线烘培的数据,对于效果迭代会有一定的数据交换成本。为了进一步提升迭代效率,我们还初步完成了Position Based的GPU Cloth模拟。

在模拟4万个粒子的情况下已经可以实时跑60fps且表现出自然的褶皱。这将极大减少效果迭代所需要的时间,基于GPU实时模拟的方案将在之后的制作流程中开始应用。

能否介绍一下头发的实现细节?

贺甲:基础的Diffuse shading使用了Multi-layer toon ramp实现丰富的阴影及色彩的渐变和细节。高光计算则使用了各向异性材质,并使用两层高低频高光叠加来获得更丰富的层次和变化。

为了体现更为风格化的高光形状,我们还使用参数化曲线结合Jitter noise来定义头发高光的形状,这些参数都可以实时调整,方便最终调出满意的效果。

卡通造型的头发如果要实时计算光照对模型制作方面的要求也比较高,要按照严格的硬表面来制作要求才能保证高光的顺滑。

眼睛看上去那么有神是如何实现的?使用了特殊的Shader吗?

贺甲:眼睛是卡通渲染核心的表现点,我们一方面希望眼睛可以从不同角度体现质感,另一方面又要保证卡通插画的感觉,因此专门为眼睛定制了特殊的Shader,主要模拟了眼球折射和光束焦散效果,再配合手绘的纹理材质,最终达到了期望的效果。

如何看待实时渲染技术对于未来动画影视行业的意义?

贺甲:毫无疑问实时渲染技术对于未来影视动画是一个趋势,已经逐步开始有厂商使用实时引擎去做动画。对于整体行业制作方面转型以及大规模使用还有很长的路要走,但是它的优势已经逐步开始显露。

一方面可以从渲染效率和迭代成本上极大加速现有制作流程,另一方面也使得小型团队甚至个人做出高品质的影视及动画作品成为可能。

新兴技术的出现,例如:基于机器学习的Procedural animation,GPU实时Raytracing等也都将加速这一进程。实时渲染技术对动画影视行业的影响将经历一个从量变到质变的过程。

米哈游还会有计划基于Unity创作实时渲染的动画项目吗?贺甲:我们还在进一步完善提高整套流程以及渲染品质来推动引擎在动画制作方面的应用,敬请期待后续作品。

    推荐阅读
  • 炖花鲢鱼(炖花鲢鱼做法)

    炖花鲢鱼材料:鲢鱼1000g、葱适量、姜适量、香菜20g、泡红椒20g、油适量、盐适量、酱油适量、料酒适量、糖适量、醋适量。鱼清洗净,除去鱼鳞和内脏。用刀在鱼正反两面划几刀,用盐、料酒、酱油涂抹,腌十分钟。锅中倒入适量油,烧热。用手抓住鱼尾,从头开始慢慢放入油中炸制。等到一面定型后翻到另一面。两面呈现金黄色即可。加入适量白糖和盐调匀。盖上锅盖,炖30分钟左右汤汁收干即可。家常炖鲢鱼出锅,撒上香菜和泡红椒即可。

  • 比较虐心的电视剧有哪些呢(一部比一部催泪)

    说到虐恋电视剧,《千山暮雪》这部剧绝对是不得不说的。《步步惊心》这是一部穿越剧,由刘诗诗、吴奇隆主演。《东宫》主要就是讲述集万千宠爱于一身的西凉国九公主小枫,因和亲踏上了中原之路,与当今太子李承鄞的爱恨纠缠。但是,对于李承鄞来说,权利始终是第一位的。就算是在爱上小枫之后,仍然可以为了至高无上的皇权对小枫各种的利用。

  • 韩休为相文言文翻译(韩休为相原文及翻译介绍)

    韩休为相文言文翻译《韩休为相》原文唐玄宗以韩休为门下侍郎,同平章事。言终,谏疏已至。翻译甲寅年时,唐玄宗任用韩休当做皇帝近侍、同平章事。韩休为人严峻刚直,不求取名誉权势。起初,萧嵩认为韩休性情淡泊,容易控制,所以就把他引荐给唐玄宗。共事的时候,韩休持守正道不阿谀奉承,萧嵩就逐渐厌恶起他来。

  • 断电时间继电器工作原理及接法(时间继电器的分类)

    电力作业人员在维修作业过程中,特别是在处理电机拖动问题的时候,经常都会遇到时间继电器,时间继电器在电路中的应用非常广泛,今天就重点来看看时间继电器的原理,特点,常见故障和运用!

  • 炸藕片怎么做

    接下来我们就一起去了解一下吧!炸藕片怎么做材料:莲藕1节,鸡蛋一个、花椒粉、盐、淀粉、植物油。莲藕去皮,切成薄片,在清水中浸泡。鸡蛋磕开,加适量清水、盐、花椒粉、淀粉,搅拌成糊。锅内放植物油,烧热后逐个放入莲藕片,炸成金黄色即可。也可以做成甜的。去掉调料,加入白糖即可。

  • 适合新手做的鱼(喜欢鱼的就赶紧收起来)

    配备食材一条草鱼,一小块五花肉,葱,姜,蒜,八角,花椒,干辣椒,豆瓣酱,盐,料酒,油耗,糖第一步,洗净鱼。第三步,我们先把鱼腌一腌,放料酒2汤匙,生抽2汤匙,葱片,姜片。朋友们好,我是阿联爱美食,一个美食博主,教大家做一各类美食。这里没有华丽的词语,没有华丽的环境,有的只是用心为家人做饭的阿联爱美食;给大家分享详细的家常菜谱、美食、家常小吃等,如有不足,欢迎指教!

  • 蒸螃蟹先把水烧开再放螃蟹吗(蒸螃蟹先把水烧开再放螃蟹吗视频)

    煮的时间和蒸的差不多,15分钟左右,时间太长,蟹肉变老了就不好吃了。然后用绳子绑住。放在蒸锅里肚子朝天,以防营养流失。

  • 眼睛失明角膜还是正常的吗(山东一女子戴隐形眼镜20年)

    傅女士的角膜经验丰富的原越医生判断可能是发生了隐形眼镜并发症,建议傅女士来院进一步检查。正常人的角膜进一步检查发现,40岁的傅女士,如今的眼表状况还不如60岁的人。建议不要每天佩戴隐形眼镜,每次佩戴时长不超过8小时;若工作性质需要,建议行屈光手术。2因为各种原因需要日常佩戴隐形眼镜的人群,应该每年至医院进行检查,如若发现角膜或角膜缘的微小创口,应该及时遵医嘱治疗。4出现眼部不适,应及时至医院查明原因。

  • 新手黑坑装备选择(买之前心动买后无用)

    总结起来便是“买前心动,买后无用”。当然,也不能将这些吃灰的装备全部用“无用”一并概括,只不过因为随着时间的变化以及生活方式的变化,让这些装备没有了用武之地。于是,在AirTag正式发布后第一时间华为229元下单购入了这款“追踪神器”。索尼的PlayStation4游戏机是上世代最出色的游戏主机。

  • 重庆哪儿可以看海(重庆人出门就能看海)

    重庆人出门就能看海暑假眼看着马上就要来啦好想去三亚的海边躺水里喝啤酒呀霸特现在重庆人不用去海南逗可以看海了来呀,躁动呀,反正还要过四个月的夏天-重庆幻太奇海洋馆-幻太奇海洋馆就在袁家岗轻轨站旁K-Land小时代B1层,。