堡垒之夜游戏宣传片,告诉我们实时渲染对传统动画工作流程的影响

本文主要是介绍堡垒之夜游戏宣传片,告诉我们实时渲染对传统动画工作流程的影响,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在SIGGRAPH 2018, Epic介绍了游戏堡垒之夜的宣传动画的制作,让大家了解到实时渲染可以给传统动画的工作流程带来怎样的改变。

为什么使用实时渲染

传统动画流程中,工作量和资源占比最大的是中期阶段:

传统动画流程

这个流程的缺点是,导演在前期工作之后,工作由各方面的总监负责,而导演无法很有效地参与到工作中的创意碰撞。

而实拍影视的制作流程则不同。在拍摄制作的过程中,导演能即时参与互动。灯光,表演,或者摄像,任何方面有问题,导演都能马上给到反馈。

实拍影视的制作流程

该流程的工作量和资金压力主要集中在后期阶段。所以,当导演在中期阶段结束后需要修改创意,那就相当棘手了。往往修改一处几天后才能看到结果,而到那时,导演可能自己都已经忘记了。

在这里,引出实时渲染为动画制作流程带来的好处:快速修改,即时反馈。让导演像真人拍摄流程中一样,把控制作过程中的创意。

这种快速迭代的制作方式,对任何一个制作部门都有明显的好处。Epic公司请Forrester Research做了一项关于“实时渲染对影视行业的影响”的调查。数据显示81%的相关公司可能在12个月内开始采用实时渲染技术。

Forrester Research

通过下面的工作流程地图对比,我们可以看到传统动画制作流程和采用实时渲染的动画流程之间的区别(图表译自Epic):
传统动画制作流程

堡垒之夜团队希望模拟传统动画制作的工作流程,所以两张流程图大体类似:

采用实时渲染的动画流程

实行建议

采用实时渲染,Epic提出几条建议:

  • 平衡各阶段工作的资源分配

  • 为前期阶段多分配1-2倍的资源。因为你需要为他们配备游戏引擎人员,比如shader专家,技术经理以及资源整合人员。如果只有中期制作才有这些专业人员,就太晚了。

  • 尽早准备用于实时渲染的3D物件。整个阶段需要的3D资产尽量在前期阶段准备好。

  • 了解你的产品质量要求。准备相应质量的三维组件。

  • 善用实时渲染的特性快速修改和迭代

遇到的问题

在堡垒之夜动画制作流程中,该团队提了几个遇到的坑:

  1. 资源导入流程。数字资源导入UE4并不是一键拖入那么简单,需要对模型和材质做很多工作。

  2. 没有建立metadata工作流程。意味着无法用脚本做一些导入导出自动化的工作。

  3. 动作捕捉文件的调用很繁琐。现有动作捕捉工作流程是在motionbuilder里面做好动作捕捉工作,导入Maya审核,导入游戏引擎,放入level sequence,应用到角色上。而且每一个镜头都要来一遍。当时UE4版本没有很好的官方解决方案。

  4. UE4的sequencer的动画渲染还是很简陋。没有准确的按帧渲染,也没有时间码的概念。

  5. 对Alembic文件格式的限制。Alembic文件是做表情动画的完美文件格式。但在UE4中,那些用了Alembic的场景尺寸将被限制。

解决方法

针对堡垒之夜制作流程中遇到的坑,Epic在新版本中推出各种新功能和插件填补。实时渲染用于动画制作,是新的尝试,是对已经成熟的制作流程的一次革命。Epic想要发动这场革命,必须先自己试错,然后将Unreal的各种坑补上。

首先是让堡垒之夜团队头大的资源导入问题。现在有了Datasmith,问题得到了解决。目前Datasmith支持CAD,SketchUp,3D Studio Max,CityEngine,和Rhino,beta版之后将会支持更多软件。根据使用者的测试,能达到百分之九十的还原度,但对于玻璃和灯光,还是需要手动调整。

3ds Max与unreal的对比渲染效果

然后是fbx元数据标签(metadata tags)的支持。并且python和shotgun能访问元数据。这样通过python脚本语言,就可以自动化一些重复性的操作了。

metadata tags

Python在unreal中的支持,不仅能提供导入导出的自动化操作,还能对渲染作自动化。此外,在编辑器和蓝图中也同样可以使用python脚本语言。但是,Jin对Unreal Python了解不多,不清楚python和c++在unreal开发的应用边界在哪里。

还记得之前那个适合制作表情动画的Alembic格式文件吗?在Fortnite制作流程中,他们将每个角色的头和其他部分分开,头部用Alembic格式,身子用fbx导入。

很多人好奇为什么Alembic格式更适合作表情。主要原因是在fbx格式里,每个顶点最多受到8个骨骼的影响。这个限制导致表情变形不那么有细节。而Alembic格式不仅没有顶点受影响限制,更重要的是,会将maya中所有包括骨骼,融合(blendshapes),和形变(lattices),都烘培到Alembic文件里,并导入unreal。在unreal 中,Alembic缓存转变成GPU morphs然后实时播放。

fbx表情动画和Alembic的比较

关于Alembic格式导入导出工作,该团队介绍的很详细(可能坑太多)。首先,Alembic的模型必须转成三角面,从maya导出为Alembic Cache(*.abc)。unreal导入参数“Use GPU Morph Targets”必须打开。

制作中的一些细节

和一切影视制作项目一样,堡垒之夜宣传片从剧本和故事板开始。通过将剧本用premire剪辑,做成一个初版的动态故事板,为后面动作捕捉的工作服务。

动作捕捉团队和预览团队获得初版动态故事板后,开始创建粗分镜(rough layout)。为提高工作效率,减少游戏引擎与motionbuilder之间繁琐的导入导出,Epic将尽可能多的动作采集到一个场景文件里,并将该场景复制给每一个镜头,根据各镜头的要求删除每个镜头中不需要的内容。

动作捕捉

为了提升工作站的性能,根据需要设定每个摄像机视野的消失平面。

在sequencer里面排好分镜,重新修改分镜名称后,将信息输入项目管理软件开始进行项目工作的监控。Fortnite用shotgun进行项目及数字资源的跟踪和审核。

sequencer

目前主流动作捕捉系统都已經支持UE4。通过UE4自带的Live Link系统实时传输动作数据的系统目前有五个,包括Vicon、Dynamixyz、Cubic Motion,和Perception Neuron;正在开发和将要开发的Live Link兼容产品包括Xsens, Optitrack, Rokoko,和Faceware。此外,Maya和Motionbuilder同样支持Live Link系统实时传输动画数据,通过这两个3D软件可以间接实现动作捕捉系统的对接。

UE4的Virtual Camera Plugin对前期的预览和分镜创作过程非常有用。Virtual Camera Plugin实现的效果等同于我们常见的VR。用户可以使用ios设备(ARKit),VIVE跟踪器,或者其他的光学动作捕捉系统,去无线控制虚拟摄像机的位移和旋转。此外,比如焦距光圈比例之类的其他参数,都可以在屏幕上作详细调整。

image.png

堡垒之夜宣传片使用shotgun作为整个动画制作的项目管理软件,广泛应用于各个大型影视游戏项目和数字资源的管理。在unreal 4.20版本中,已经整合该系统供免费试用。主要功能包括:

  • 从Maya发布资源到UE4

  • 从Shotgun浏览器加载资源到UE4

  • 为资源添加元数据

  • 从UE4 Sequencer渲染和提交,供他人检阅

  • 数字资源的版本控制

    Shotgun

在UE4新版本中,为了增强实时渲染的电影化效果,增加了四个新特性:

  • 电影化景深效果。与之前的相比,新的景深特效更快,有散景效果,支持Alpha通道,及多平台的支持。

  • 面光源。面光源会比其他灯光类型占用更多的资源,但真实感会更强。

  • 人物效果更好。特别是皮肤SSS的效果,更为真实。

  • 物理灯光单元。用真实灯光的参数去设置,真实度不再靠感觉。

在后期特效方面,Unreal 4.20提供了一套新的特效系统Niagara。

Niagara

与前版本所使用的粒子编辑器cascade不同,Niagara是一套以节点编程为主的特效系统,用户可以自主设计粒子运动的行为模式。此外,Niagara以二进制编码运行,效率更高。

image

结论

最后我们来总结比较传统动画工作流程和实时渲染动画制作流程的不同:

比较

之前跟中影的朋友聊起Unreal用于影视制作。他们提到Unreal无法分层渲染,所以很难融入到当前工作流程中。对此,Jin觉得对于一个全新的更有效率的工作环节,影视公司应该试着改变现有的流程去适配,而不是反向。


http://www.taodudu.cc/news/show-7909145.html

相关文章:

  • Elastic认证考试,请先看这一篇!
  • 牛皮了!头一次见有大佬把「JVM和Java体系架构」详解得如此清晰明了
  • 生信难吗?我给读者的回信
  • 西安交大网络极简网关认证的“难与易”
  • 《一生必读的中国帝王史》
  • 龙芯上跑WTM,为国产化做点贡献
  • 论——中国互联网企业该如何管理?
  • 中国式家教之七式
  • 谁坑了程序员的职业道德?送给初入职的码农,和宣传奴性的领导。
  • 被中国人误传了数千年的七句话[转]
  • 【ZT】中国人,请不要自卑。
  • C03-中国人的人性与人生Notes
  • 51精密电路混压工艺分享
  • 射频/微波PCB的信号注入方法
  • ADS的LineCalc使用说明
  • 27.基于ADS的不等分威尔金森功分器设计
  • 干货:线上下单应知应会,快来了解下
  • 记一次用AD20制作STM32开发板的全流程
  • 关于ADS板材外出加工的方法
  • 罗杰斯购买位于亚利桑那州钱德勒市的电介质材料及层压板生产资产
  • allegro 05_C 板型层叠结构设置
  • “圆梦杯”大学生智能硬件设计大赛 初赛样题——理论题作答
  • 刘爱力:电信业的未来,凭什么如此乐观?
  • 从百度到华为,北大毕业后这5年的工作经历
  • 2019——2020年,年会致辞。
  • STM32F103标准库学习——输入捕获实验
  • JavaScript基础---类型转换与运算符
  • JavaScript基础---数据类型
  • Vue框架学习(一)
  • Vue框架学习(二)
  • 这篇关于堡垒之夜游戏宣传片,告诉我们实时渲染对传统动画工作流程的影响的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



    http://www.chinasem.cn/article/178065

    相关文章

    Linux流媒体服务器部署流程

    《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

    0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

    《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

    springboot启动流程过程

    《springboot启动流程过程》SpringBoot简化了Spring框架的使用,通过创建`SpringApplication`对象,判断应用类型并设置初始化器和监听器,在`run`方法中,读取配... 目录springboot启动流程springboot程序启动入口1.创建SpringApplicat

    SpringBoot中的404错误:原因、影响及解决策略

    《SpringBoot中的404错误:原因、影响及解决策略》本文详细介绍了SpringBoot中404错误的出现原因、影响以及处理策略,404错误常见于URL路径错误、控制器配置问题、静态资源配置错误... 目录Spring Boot中的404错误:原因、影响及处理策略404错误的出现原因1. URL路径错

    通过prometheus监控Tomcat运行状态的操作流程

    《通过prometheus监控Tomcat运行状态的操作流程》文章介绍了如何安装和配置Tomcat,并使用Prometheus和TomcatExporter来监控Tomcat的运行状态,文章详细讲解了... 目录Tomcat安装配置以及prometheus监控Tomcat一. 安装并配置tomcat1、安装

    MySQL的cpu使用率100%的问题排查流程

    《MySQL的cpu使用率100%的问题排查流程》线上mysql服务器经常性出现cpu使用率100%的告警,因此本文整理一下排查该问题的常规流程,文中通过代码示例讲解的非常详细,对大家的学习或工作有一... 目录1. 确认CPU占用来源2. 实时分析mysql活动3. 分析慢查询与执行计划4. 检查索引与表

    Git提交代码详细流程及问题总结

    《Git提交代码详细流程及问题总结》:本文主要介绍Git的三大分区,分别是工作区、暂存区和版本库,并详细描述了提交、推送、拉取代码和合并分支的流程,文中通过代码介绍的非常详解,需要的朋友可以参考下... 目录1.git 三大分区2.Git提交、推送、拉取代码、合并分支详细流程3.问题总结4.git push

    C#提取PDF表单数据的实现流程

    《C#提取PDF表单数据的实现流程》PDF表单是一种常见的数据收集工具,广泛应用于调查问卷、业务合同等场景,凭借出色的跨平台兼容性和标准化特点,PDF表单在各行各业中得到了广泛应用,本文将探讨如何使用... 目录引言使用工具C# 提取多个PDF表单域的数据C# 提取特定PDF表单域的数据引言PDF表单是一

    PyCharm接入DeepSeek实现AI编程的操作流程

    《PyCharm接入DeepSeek实现AI编程的操作流程》DeepSeek是一家专注于人工智能技术研发的公司,致力于开发高性能、低成本的AI模型,接下来,我们把DeepSeek接入到PyCharm中... 目录引言效果演示创建API key在PyCharm中下载Continue插件配置Continue引言

    详解如何在React中执行条件渲染

    《详解如何在React中执行条件渲染》在现代Web开发中,React作为一种流行的JavaScript库,为开发者提供了一种高效构建用户界面的方式,条件渲染是React中的一个关键概念,本文将深入探讨... 目录引言什么是条件渲染?基础示例使用逻辑与运算符(&&)使用条件语句列表中的条件渲染总结引言在现代