期货交易自动化论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 34|回复: 0

《最终幻想》技术揭秘(转载)[已扎口] - 比特币今日价格

[复制链接] |主动推送

285万

主题

285万

帖子

855万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
8553710
发表于 2022-9-11 08:59:45 | 显示全部楼层 |阅读模式
翻译 钱麟(有删节)
随着CG电影科技的飞速发展,毫无疑问今年的最具视觉冲击力的电影大片非《最终幻想》莫属,片中的角色和环境的真实度之高,让包括Tom Hanks在内的一大批超级明星都感到了失业的危机。
本片由曾经执导FF系列游戏的史克威尔的Hironobu Sakaguchi担任导演,由一群精通艺术与技术的天才艺术家完成,此外还有大量的剧本编写人员、程序员、工程管理人员、系统管理人员,他们它来自不同国家、拥有不同背景、会不同的语言,整个电影就是由这些人协作完成的。对于这样一个拥有技术革新性质的项目,需要有一个大型的、复杂的人员配备,安排他们简直就象恶梦一样。史克威尔的工作组在每一个阶段、每一个制作步骤上都遇到了前所未有的挑战,这不仅仅是技术上的问题,更是人员管理、工作流程设计、人与人之间的交流等等。
现在让我们通过对《最终幻想》的制作核心人员的采访,来进一步了解CG电影工程,首先介绍一下各位被采访人员的身份:
Troy Brooks:产品系统总监
Kevin Ochs:角色动画导演
Dave Seager:灯光总监
Kevin Bjorke :渲染和材质总监
Kaveh Kardan:工程管理(经理)
采访记者:Hannibal和Jonathan
以下是采访的全部过程,先是对Troy Brooks的采访:
Hannibal:您能否给我们介绍一下《最终幻想》的全部制作过程,特别是它和普通的电影有什么主要的不同?例如,它是如何从脚本到故事板到最后的成品的?在最终渲染前,您是否做了大量的测试性渲染,等等?
Troy Brooks:这是一个互动的过程,一开始我们根据剧本画草图,并修改剧本,直到剧本修改完成后再开始正式做故事板,这个和普通的电影一样。刚开始设计3D的时候,我们先用低分辨率的模型开始制作,主要是确定摄像机的运动和角色的动作,用低分辨率模型有助于进行实时控制。为检查摄像机和角色动画,我们必须经常地进行测试性渲染,最终才把它们赋予高细节模型。一些如灯光之类的设置是分开进行的,最后再由合成小组小心翼翼地把它们合成在一起。整个过程中,我们始终都在测试渲染、检查摄像机、动画、灯光、材质,并且修改它们。
Hannibal:好,您能否再介绍一下这些艺术家在工作中的具体职责,以及他们是如何合作来完成最后的项目的。
Troy Brooks:有一些艺术家,特别是在VFX组中(注:VFX即Visual Effect视觉效果),是非常专业的,他们自己编写材质和表达式代码。产品软件组负责将这些代码实际应用到工作流程中去。他们编写Maya的插件以供动画师们进行具体的操作,这些程序也包括在后期合成时使用的程序。当然,整个工程要有一个整体的组织和分工,让每个人都能在里面很好的工作并得到他们所想要的,我们还要想办法进行数据的转移,从第一步到第二步,这包括专业渲染工作站(renderfarm),用来处理批处理工作,如渲染、动画计算、动力学计算、特效制作以及长段动画的合成,产品软件工程师是在整个工作组内到处跑的,他们要会发现动画师缺什么、需要什么,以及动画师用它们是来做什么的。此外我们还有R D组(资源与开发项目组)开发专门用于头发和衣服制作的插件SqFlex,并且他们还要负责所有的资源管理。
Hannibal:我曾经读过一些关于这部电影的技术资料,说你们用了四台SGI2000系列的高性能工作站和其他一些SGI系统来制作《最终幻想》,你们把Maya装在SGI上,把Renderman装在了LinuxR OS-based系统上。您能否给我们更进一步地介绍一下你们的软硬件设备,它们在工作中都扮演了什么样的角色?比如,在制作过程中Linux扮演了什么样的角色?
Troy Brooks:所有的艺术家在他们的桌子上都有一台SGI Octanes,有些人还有两台,这是我们用来创作的主要工具,上面装载着Maya,这是我们用来制作模型和动画的主要工具,有些最终的动画我们是用Maya渲染的,但是大多数都是用Pixar's RenderMan来完成的,我们用Onyxes来完成合成,用16个CPU的Origin 2000s来批处理MTOR工作,也就是从Maya向Renderman的转换工作。我们还有一些Origin 200的服务器,用来作为硬盘服务器,和一些NetApp文件服务器,用来储存数据文件(容量大约4TB)。专业渲染工作站是用了Linux系统(PIII, custom-built, rack mounted),装载了Red Hat 6.2,是专门装Renderman来渲染用的。另外我们有自己专门的专业渲染工作站软件,叫SQB(Square Batch Processing),是运行在Linux系统上的,可以用来进行非常专业的全局渲染控制。
以下是对Kevin Ochs、Dave Seager、Troy的采访第二部分:
Hannibal:我很想知道在一部电影中,我们制作一个角色或是一个场景,需要多少polygon面?此外你们的材质是如何绘制的,分辨率又如何呢?
Kevin Ochs:角色或场景里有多少面要看它们在电影中是如何表现的,次要的角色或是离得远的东西我们就要做得小一些,一般总共大小不超过100K,但是对于主要角色,比如那些衣服上有动力学模拟的角色,一般单个大小就要300K,其中面部约30K,头发、眼睛、睫毛之类的约20K,但是由于头发是由专门的插件做的,因此实际大小在这里可能很难用polygon来计算。当然在最后用Renderman渲染时由于渲染器的细分表面,可能所有的polygon数都要加倍。
Hannibal:那您能否介绍一些渲染的数据呢?比如需要多少时间渲染?总共动画大约有多少帧?用什么设备来存储?
Dave Seager:如果是用单CPU的机器需要渲染934,162天,但是我们的渲染工作站有1200个CPU。这只是最终渲染,如果加上前期的测试渲染、反工等,数字可想而知,存储设备上我们用4TB的Origin 200的服务器和一些NetApp文件服务器。
Hannibal:在等待渲染的时候你们都做些什么?打网络游戏,还是踢足球,你们的工作室气氛怎样?
Troy:网络游戏倒是不太打,但是我们工作室内的气氛是很随意的,就象别的工作室一样。我们看一些游戏、电影的书,有些人喜欢在非工作时间踢足球,也有打斯诺克的和泡吧的,但是具体的我不是很清楚。
Hannibal:您能不能说一下你们在制作中遇到到的最富有挑战性的问题的是什么,以及是如何遇到的?
Troy:几乎每一步制作中我们都遇到了困难和挑战,比如头发、衣服、面部表情、动画控制、运动捕捉等都有问题,但是我们最后还是解决了,有许多都是用了有革新意义的新方法解决的。但是我想这些都不是最大的问题,最大的问题是如何组织和管理的问题,一大堆的模型、材质、程序,如何利用这些东西安排出一个工作流程,先用什么后用什么,先做什么后做什么,一个个环节之间是如何转接过渡的,建立和管理这样一个生成流程需要我们付出艰辛的劳动,还有仔细地考虑。
此外我个人认为语言交流问题也是一个最大的问题,我们的艺术家们来自20个不同的国家,其中有一些是从日本的史克威尔来的,不过我们有很好的翻译。由于我们当中有许多人曾从事过的游戏、电视、广告、还有专门做特效或动画的,因此大家的这种各种各样的经历让反而让我们的电影得益了,但是真要做到顺利的交流,还不是那么容易做得到的。
以下是对Kevin Bjorke和Kaveh Kardan的采访,记者Jonathan
Jonathan:许多人在谈论《最终幻想》用电脑创造真实的技术瓶颈,您所认为的在制作中所遇到的技术瓶颈,包括硬件和人员方面的瓶颈是什么呢?
Kevin Bjorke:电脑科技的进步使我们可以做出更复杂的场景,这就需要更多、更专业的人来完成,这就是为什么Pixar为什么现在的雇员比原先1993年的时候多了3倍的缘故,尽管它们在技术上越来越发达。其实要做到无限接近真实,更多的细节,更复杂的场景,是电影动画的基本发展方向,而解决这个问题的关键就是高度集中的人力资源。
Kaveh Kardan:还有就是一个CPU工作效率和工作时间表之间的矛盾,如果CPU能够工作得更快一些的话,我们就能就可以把电影做得更好。此外因为计划只给了我们有限的时间去开发程序,如果我们能编写更多程序的话,我们的有些工作就可以变得简单或是变得可能,比如头发和动力学模拟的程序都是我们自己编写的。
Jonathan:最近许多研究都集中在如何渲染出更真实的场景,即高级的全局照明和光线追踪技术。然而这样的技术,由于种种性能或兼容上的原因,还没有普遍进入我们的产品中,在《最终幻想》的制作过程中,您是否用了这样的技术来塑造更真实的角色呢?还有您觉得使用这类技术有何限制呢?
Kevin Bjorke:大多数这样的研究文章都是人们在看了《最终幻想》后产生的,其实CPU并不是限制渲染的根本性因素,一些渲染器能渲染出好的肥皂泡,但是不一定渲得出好的角色动画,如果过于追求计算机技术的话,但对于艺术家来说他们的发挥空间就小了。虽然CG从技术角度讲是非常复杂的,它需要强大的硬件和程序,但是更直接的因素是专业的艺术家,他们操纵着这些电脑,完成指定的任务。
Kaveh Kardan:我相信全局照明将来会普及的,从灯光角度来将,直接照明的方法几乎已经达到了模拟真实的极限,如Renderman。
Jonathan:你们主要是用Renderman来渲染的,那你们还用了其他什么技术或是其他什么渲染工具?
Kevin Bjorke:我们确实用过一些保密的,非正规的技术。一些特效,特别是一些光子效果或VFX特效,如爆炸、火焰等,我们用了后期合成、贴图模拟等技术。
Jonathan:你们是如何制作头发的?是不是用了关联的几何体和Renderman里的RiCurve?在渲染的时候用了什么特殊的方法呢?
Kevin Bjorke:头发就是用RiCurve加上很普通的材质做成的,灯光和阴影的问题倒是复杂些,如果要渲染一个在灯光照射下的,有许多头发的场景,就比较困难了,方法当然也不同寻常。以前曾经试过把头发和其他部分分开渲染,最后再合成,但是头发太细了,一些细节在合成中很容易丢失,这样我们就不得不使用大量的人力来手工绘制象素修补,代价是很大的。
Jonathan:还有一个关于头发的问题,你们使用什么方法来模拟头发的动画的,特别是Aki飘逸的长发?是粒子技术,还是IK模拟,或是一些技术的组合,还是别的特殊技术?
Kevin Bjorke(非常小心地):Aki的头发用了几种不同的模拟方法,由于是在Maya中制作的,动画师可以用我们写的程序工具,或手动制作动画、或用Maya的限制(Constrain)技术,等等,根据不同的要求用不同的方法,例如,Aki的头发在zero-gee的时候和在法庭里的时候是完全不同的。
Kaveh Kardan:零重力状态下的头发我们用的模拟方法是和做衣服的方法是一样的。头发在重力状态下的动画是用Maya本身的工具来完成的。
Jonathan:传统的电影特效,特别是在这10到15年的这段过渡时期,有许多效果都是由后期的二维合成制作的,而你们的全CG动画和二维合成动画之间有什么关系?你们在合成技术上有什么特别的吗?
Kevin Bjorke:在合成方面,我们现在已经可以获得每个独立的角色或是场景元素,也就是说,我们可以把角色和场景平滑地分离开来,分离渲染,比如,在一个General Hein的特写镜头里,眼睛的反光是我们特别单独渲染然后合成的,效果很完美。
Jonathan:再问一下,电影展示了两个基本点完全不同的世界——人类的物质世界和非人间的幽灵世界,在合成的时候你们遇到了什么样的具体问题?又是如何解决的?
Kevin Bjorke:因为人类世界和幽灵世界是分开渲染的不同场景,因此没什么特别的,把幽灵放到场景中就如同把其他特效放到场景中一样。
Jonathan:在制作如此真实的角色中,您发现有什么在动画方面很有挑战性的问题吗?您认为在使用的工具上还有什么不足吗?您将来准备做比这个更真实的角色动画吗?
Kevin Bjorke:挑战是无限的,在动画过程中也是困难重重,我们开发了一些变形和模拟工具,它们都有自己的名字,如"shapeDriver" 和"sqFlex",而不是用Maya本身的cloth系统,当然这不单单是为了表达更真实的效果,更是为我们自己的电影风格服务的。
Jonathan:面对如此大的一个项目,您是如何管理您的数据的?这些数据是如何给这么多人使用的?您是否用了什么新的技术来管理这些数据?
Kevin Bjorke:是的,管理这些数据确实很麻烦,很大方面的是人的因素,很少有人做过这么大的项目,如果你是和一两个人或是一个小型工作室做的话,你是遇不到这些问题的。但是电影是不一样的,这是小作坊和大工厂之间的区别,也许这两者都能做出作品,但是方法和过程是不一样的。
Troy:我同意,这确实很难,而且不仅仅是规模上的问题。我们做过电视上的动画,几小时的,但是对于一部CG电影来说,人员的分配,时间的安排、当中出现问题的解决,都可能会影响到工作流程和产品。
本文最后还讨论了一些有关实时技术的问题,与《最终幻想》无关,因此下文被略去
polygon开发

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|期货交易自动化论坛

GMT+8, 2024-11-29 06:52 , Processed in 0.109799 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表