中文第一计算机图形学社区OpenGPU 版权所有2007-2018

 找回密码
 注册

扫一扫,访问微社区

搜索
查看: 16468|回复: 15

【西川善司】CAPCOM的[MT Framework 2.0]图形讲座

[复制链接]
发表于 2012-2-21 21:27:24 | 显示全部楼层 |阅读模式
本帖最后由 trace 于 2012-2-25 22:02 编辑

西川善司为3D游戏粉丝的[MT Framework 2.0]的图形讲座CAPCOM的次世代游戏引擎的真实一面!更快的把[失落星球2]的高科技视觉公开!!

http://game.watch.impress.co.jp/docs/series/3dcg/20090613_283112.html
原文 西川善司
翻译 Trace
校对 千里马肝

2009年 6月 13日


    随着时代的更新,游戏开发规模变大,游戏平台的复杂性也增加了。为了对应这种变化,2004年,从微软和索尼的次时代机的传言刚流出来的时候开始,先进的的游戏工作室就进行了把游
戏开发底层框架化的讨论。这里所谓的框架(Frame work),是指把游戏程序的骨架部分做成通用程序库(common library)化的方案。

    既然可以用[游戏引擎]的形式来归结这个潮流,那不用说大家都应该知道EPIC GAME的[Unreal Engine 3.0]。相比以原本的游戏工作室为单位,日本的游戏工作室更重视每个开发组的独立
性和自主性,他们当初在接受这个潮流时,是有抵抗情绪的。

   现在是2009年,虽然可以断言这时的日本和美国还没有技术差距,但即使这样,直到2005年和06年左右,对于[多核心CPU(Multi-core CPU)][可编程着色器架构(Programmable Shader
Architecture)]等新技术课题的基础研究,在很多游戏开发现场中,感觉都不是很充分。在这些技术面上,可以看到欧美阵营从一开始就决定冲刺了。

    其中,CAPCOM瞄准了这个时代的前端,进行了关于[游戏引擎][多核心CPU][可编程着色器架构]的研究,这些的研究成果,就是CAPCOM引以自豪的[MT Framework]。这次,作为[生化危机5]
篇的特别追加,介绍[MT Framework]的最新情况。

 楼主| 发表于 2012-2-21 21:28:55 | 显示全部楼层
本帖最后由 trace 于 2012-2-21 21:54 编辑

MT Framework 2.0也关注了向第三方做扩展

首先,我们向[生化危机5]制作人竹内润先生询问了关于围绕MT Framework的战略


CAPCOM[生化危机5]制作人竹内润先生


CAPCOM技术研究室程序员史田智史先生

竹内先生[如果用柔道战来比喻MT Framework的话,感觉是用先锋,中锋,大将的三阶段战术向成熟产品推进,先锋是[丧尸围城]和[失落星球],中锋是[鬼泣4],大将是[生化危机5]。使用这个战术,通过MT Framework,在面向本世代机的游戏开发中获得了经验,也取得了成功。接下来,我们必须展开同样的战术,进一步挑战未来的次世代游戏开发。方法就是现在还在持续开发的MT Framework2.0(MTFW2.0)。通过各报道知道的人大概已经很多了。[MTFW2.0]的先锋战就是[失落星球2]]

    MT Framework,虽然没有对外通知,但在公司内用版本号为代号的形式来称呼。每个游戏开发项目中都在局部改良的层次对机能做强化,版本的编号就成了一号对一个游戏的形式,具体上就是下面的列表。

MTFW1.0---[丧尸围城](2006年)
MTFW1.1---[失落星球](2006年)
MTFW1.2---PC版[失落星球](2007年)
MTFW1.3---[鬼泣4](2008年)
MTFW1.4---[生化危机5](2009年)

    [MTFW1.x],虽然在印象上是以XBox360和PC为主要目标来做出的基本设计,但感觉其对应到PS3的方法也越来越成熟了。这并不是“偏袒”,而是CAPCOM预研次世代开发技术后,进入实验研究阶段,存在的硬件首先是PC,接着要做的开发环境是XBox360,顺序有很大的影响。游戏机本体的发售也是这样,XBox360是2005年底,PS3是一年后的2006年底,如果考虑到这个发售顺序,现在的开发的顺序也是没办法的事。

    随着时间的推进,对XBox360、PS3,还有PC上,擅长和不擅长的地方也越来越了解,从把最初以3个平台作为目标的新构架游戏引擎(开发框架(Framework)),进行再设计。这就是[MTFW2.0]开发的开始。

竹内先生[我们也通过[MYFW1]的经验, 对开发框架的重要性,以及它在游戏开发便利性上有了更深的理解。[MTFW2.0]中,全部平台的通用性的进一步提高,每前进一步的战略都要讨论。那就是,我们CAPCOM的第三方也要使用[MTFW2.0]的战略。

    根据竹内先生所说,[CAPCOM通过[MYFW1]作为游戏的开发战略] 已经广泛的报道过了,
,而且进一步 以[MYFW1]为基础的游戏也获得了成功,各公司询问关于[MYFW1]的事据说有很多。但是,[MYFW1]是面向公司的内部引擎,因为完全没考虑到发给公司以外,作为CAPCOM人员的竹内先生也有很多痛苦的部分吧。

    收到这种咨询后,并不是展开引擎商业化,而是针对开发能力高的游戏工作室,通过和CAPCOM合作关系,使用[MTFW2.0]的游戏开发的解决方案的讨论。

    以具体的例子来说,CAPCOM制作出版的游戏,或是CAPCOM人气系列的派生作品当中,也许会出现[虽然是CAPCOM品牌,但是由其他工作公司以[MTFW2.0]游戏引擎为基础开发]的游戏。

    顺便一说,万代南梦宫的游戏也有称为[NU Library]的优秀公司内制中间件,在人气游戏[火影忍者终极风暴]上也采用了。广泛的被第三方使用,现在,第三方利用大型工作室的内置引擎,本身已经不新奇了。但是,虽然当初卡普空一直说这[MTFW1]是只对应公司内制游戏的专用引擎,但从[MTFW2.0]开始战略似乎做了很大的改变,非常有兴趣的话题。

    那么,最近次世代机的话题差不多一点点的开始了。在这个时期[MTFW2.0]的开发推进果然是要对应次世代机的完全改变架构吗?

竹内先生[要做出将来即使核心数量增加也可以灵活对应的设计。嗯,我对传闻的Larrabee也有兴趣(笑)]
石田智史[是这样的,[MTFW2.0]向DirectX11的对应就在积极的进行着。在已经发售的评估版DirectX11上已经Build完成了。是Larrabee吗?因为很早以前也写过软件渲染,如果让我做,那真是享受啊(笑)]
【千里马肝注:Larrabee是Intel已经取消研发的显卡,原预计在2008年第三季推出样本,在2009年正式发布,最终在2010年5月宣布中止。具体请见维基百科:http://zh.wikipedia.org/wiki/Intel_Larrabee

展望次世代机和次世代技术的[MTFW2.0]


公开发言说以后也会支持PC平台的竹内先生


CAPCOM技术研究室室长伊集院胜先生


在[生化危机5]的取材中,笔者怎么没想到是从[MTFW2.0]的演示开始!真是幸运啊。

    日本的游戏工作室,定期发售的PC版虽然有所减少,但CAPCOM的基于MT Framework的作品有比较快速发售PC版的倾向。这个流程也是继承了[MTFW2.0]吗?

竹内先生[不久前的Larrabee也是这样,游戏平台(技术方面)的最前端,现在是PC啊。为了在技术方面保持世界的最高端,这点是不能忽视的。关于PC平台的研究和PC版的提供,对[MTFW2.0]在战略层面都没有打算改变。但是,现在(2009年5月)状况可以说时机很微妙。在所谓的Windows7和DirectX11登场前,今年如果打算做出点什么就不能无视对它们的对应。这意味着我们开始具体的对应PC平台的公告是很难说出的(笑)]

    根据竹内先生所说,关于PC,难以解读今年以后的PC相关企业的动向。即使 [MTFW]小组也对GPGPU的对应有兴趣,不过对于CUDA,OpenCL(包括ATI Stream),DirectX Compute Shader的情况,是各自对应,还是集中在一起,无法看出哪个会是主流,目前还没有决定。无论如何,[生化危机5]的PC版发售决定进行宣传。因为也表示了今后CAPCOM也要持续对应PC平台,所以PC用户暂时可以放心了吧。

    有着[XBox360和PS3之后]意味的[次世代机],[MTFW]组是怎么关注的呢,很多的游戏开发者虽然希望是现在硬件的延长线上进化,但也不能否定像PS2到PS3那样做出激烈进化的可能性。

伊集院先生[次世代机吗?作为我们,感觉那是无论如何都要到来的事(笑)。与其说硬件没有急剧的进化,不如说以后的游戏形式不明确吧。如果用Larrabee作软件渲染,[就成了只有我们才能做出的画面了么...我感觉要积极的解决。]

竹内先生[我们作为开发一方,会注意硬件厂家的下一步。像开发环境的整备和新媒体的登场,很期待像WII那样有什么很厉害的变化。]

    新硬件登场后,游戏开发者为了能活用硬件潜力,要反复的艰苦试验,会暂时迎来痛苦的时期。一旦这个痛苦时期结束,就会开始做出像是超越了硬件的潜力界限那样成熟的游戏了。回顾游戏史大概是反复这个模式没错的。

    PS3和Xbox360,都是以DirectX 9/10为基础的本世代游戏平台,现在要进一步迎来成熟期,为了进行有优势有效的游戏开发,CAPCOM的方法就是[MTFW2.0]吧。

    而且很有意思的是,只要听到前面MTFW组的发言,就不会害怕下一代主机登场了。关于从2005年到2006年出现在本世代机上的激烈的技术革新的局面,虽然日本的开发现场晚于海外,不过CAPCOM的MTFW组也面对下一步进行秘密策略,用很自信的姿态表示[次世代机的技术革新啊,总算来了太好了]。至少在现在的本世代机上,MTFW可以看作日本游戏开发场面的技术样本,而且还在世界战略意义上成了基准的存在。

 楼主| 发表于 2012-2-21 21:29:42 | 显示全部楼层
本帖最后由 trace 于 2012-2-21 21:56 编辑

面对[MTFW2.0],回顾[生化危机5]的开发


CAPCOM第二图形制作室设计师平林良章先生

    被放入[MTFW2.0]的理念大体上清楚了,那么具体的看看[MTFW2.0]的样子吧。

    首先,关于在[生化危机5]中暂时告一段落的[MTFW1]项目,在[生化危机5]的开发结束后,可以看到的课题,我想从这些话题开始。

石田先生[技术交流等事后的技术会议中有很好的话题,不过现在的主流着色器(Shader)管理方式,Shader的变种过于庞大。现在[MTFW1]中,管理方式也是以[Shader Pipeline]为单位。把整个Shader作为一个管理单位,例如Vertex Shader的skinning设定了4个weight,光源和法线贴图也是这样,按感觉设计出来了。因此,只要改变光源的数量和法线贴图的指定,就成了其他Shader,变化就增加了。在[生化危机5]中,Shader变化超过了10万种。感觉这些是无论如何都不能做到的(笑)]

    结果,在[生化危机5]中,只在Shader上就占有16MB左右的内存。还有,现在虽然是运用静态分支命令,指定Shader内的光源,控制了变种的增加,但因为在PS3的GPU的RSX上没有静态分支,PS3版本上要全部作为变种来实现,使得PS3版上的Shader达到了50万种以上。
PS3的RSX上,有动态形的分歧命令,活用这个会抑制变化的增加,在实际的尝试后,这个方法速度太慢无法使用。

    关于[只要光源数不同,Shade变化就会增加]的说法是在最近听到的问题点,解除这些的方法,也请注意在本连载的[杀戮地带2]篇中介绍的Deferred Shading。

石田先生[Deferred Shading和XBox360的匹配很差。XBox360的GPU上虽然有10MB的EDRAM,但720P的分辨率做MRT的话,因为无法放入10MB里,只能使用Tiled rendering,效率就变差了。虽然也有只把Normal和Specular写入buffer里,做出只有Lighting的 Deferred Shading :Light Pre-Pass Rendering,但这些在现在的实现中要符合状况的转换]
   
平林先生[还有,这个Deferred Shading的方法,和半透明物体的兼容性很差(笔者注:关于半透明处理需要另外渲染再做post process合成的方法)。CAPCOM没有半透明吗,是因为不能考虑(笑)。要想取得同为半透明对象的priority(前后关系),无论如何都会有的。我想其他的日本工作室也是这样,这个手法说不定在日本难以流行。

石田先生[Deferred Shading,能使用的材质表现也是有限制的啊。用ID管理的方法虽然也被考虑,但这样做时,动态分支就成了不可缺少的了。在PC上虽然很好,但在PS3上感觉变的恶梦一样(笑)。像PS3的PHYRE ENGINE那样,要是用SPU做出Lighting也很好吧。不论是XBox360还是PS3或PC,感觉都很难采用。]

    在PS3上,也许Deferred Shading是最合适的,把多平台展开作为前提的游戏前提,并把半透明看的比其他都重要的CAPCOM,没有理由[在MTFW上立即采用Deferred Shading]

[Trace注:在SIGGRAPH2011上,EA的Digital Illusions CE 介绍了[战地3]在XBOX360上的渲染方案:Tiled-Based Deferred Shading(把屏幕分为若干个Tile,来判断哪些被光源影响,只有被光影响的像素才会做处理,从而减少了带宽), 解决了因为只有10MB EDRAM 无法用MRT的来做Deferred Shading的问题]







   

 楼主| 发表于 2012-2-21 21:30:31 | 显示全部楼层
本帖最后由 trace 于 2012-2-21 22:01 编辑

[MTFW2.0]上新的Shader系统[Meta Shader System]是什么?

    用了怎样的形式在[MTFW1]的基础上进行「MTFW2.0」的开发的呢?虽然简单来说应该是按着升级和[机能强化]的关键词走到现在,但实际的情况是怎样的呢?

伊集院先生[MTFW2.0,几乎是从最初开始完全重新构筑的东西,因为MTFW1如论怎样做,最初的硬件都是XBox360,所以基本设计不能否定是面向XBox360的。PS3出现后走向了成熟,正是现在这个时期,为了要最大限度的活用全部的硬件而重新思考设计。]

    MTFW开发组从2008年1月左右之后开始了开发,开发初期做出连3D模型都不能显示的文字和窗口,几乎从零开始的项目启动了。初期开发成员是2个人。石田先生从2003年PS2的[鬼武者3]的开发时代开始,就是一直从事渲染引擎设计行业的专家。在MTFW项目中担任的工作是领导基本设计的架构师。

[MTFW2.0]支持的HDR渲染的变化]

没有HDR


和[女神侧身像2]同样手法的范围压缩模拟


由于浮点数buffer得来的正确HDR


保持色彩风格的同时施加范围压缩的模拟HDR


非线性Toon Mapping


和[MGS4]同样由Blend buffer得来的合成图例


在MTFW项目中担任着领导基本设计的架构师的石田先生。

    根据石田先生所说,[MTFW2.0]的渲染引擎,是计划着从零开始重新制作的。要是只从表面的产品规格来说。迄今为止的[MTFW1]中,虽然对应了XBox360和PS3以及DirectX9(SM3.0: ShaderModel3.0)和DirectX10(SM4.0: ShaderModel4.0),但在[MTFW2.0]中,只进行了到DirectX11(SM5.0: ShaderModel5.0)的支持,感觉没有很大的变化。

    但是,并不是那样。实际上,在内部的大的架构上谋求了革新。[MTFW2.0]中,有着新开发的独立的统一Shader管理系统。各世代不同GPU配置的差异,ShaderModel的差异,都可以进行处理。

    虽然PS3,XBox360等家用机有着同样SM3.0世代的GPU,但在这之外的部分,有着这些机种专业的GPU命令,DirectX9和DirectX10中SM3.0和4.0存在着差异。前述的Shader变种的问题还有,游戏项目的程序员一旦打算写出实现某种表现的Shader,为了得到最大的性能,有必要全部使用PS3,XBOX360,DirectX9,DirectX10,DirectX11的最合适指令。Framework的目标是让程序员那边的负荷降低,可以说是作为以游戏引擎为基础的游戏开发必须克服的课题。

石田先生[为了应对这个问题,游戏程序员一方就是用最高级的ShaderModel进行shader设计就可以了。[MTFW2.0]的Shader系统的预处理实现了,在分析Shader的程序代码后,使用对应平台的专用命令来做最合适替换的最优化的结构。具体上来说,程序员要是写出DirectX10.1的SM4.1 Shader代码就可以了,在向下级世代的平台输出代码时,[MTFW2.0]会替换成哪个平台GPU的专用命令。也就是说,用这个shader可以得到最大性能的形态,并向低级的Shader Model进行转换。也要让这个配置对应将来DirectX11的SM5.0。]

    程序员即使没有对每个目标平台做特殊优化技术的知识,也可以得到最大性能的Shader代码。渐渐的,这样的东西全让微软来实现就可以了,这么想的开发者大概很多吧。CAPCOM没有被GPU厂商束缚,技术力也很高,独自就实现了这些。MTFW2.0]上,把这个构造称为[meta shader]系统。


[MTFW2.0]的Shader编辑器的画面。是制作meta shader的工具。


[UE3]的材质编辑器。作为不依赖平台的Shader设计工具的始祖,登场时引起了强烈轰动。

    作为一个没有依赖平台的“方言”Shader系统,也有着EPIC GAMES的[引擎3(UE3)]那样的材质工具。[UE3]用的是把每个平台中最适化的Shader效果的部件组合后,来设计想表现的材质Shader的方法。还有[UE3]也是以艺术家和设计师也可以设计shader这点来吸引买家的。

石田先生[不能像[UE3]的材质编辑器那样随意的把部件替换。[MTFW2.0]的meta shader 系统,处理的对象都要是shader的源代码。日本的设计师和艺术家不太想做shader设计,相反,(日本的)程序员虽然没有那种零件为基础的shader设计工具,却很希望用源代码来写shader(笑)。[MTFW2.0]的meta shader系统是把程序员的自由度作为最优先来制作的。

    [MTFW2.0]的meta shader系统中,首先,基本的shader设计是在源代码等级由程序员进行的。这个shader的流程本身,即使在[MTFW2.0]的meta shader系统的GUI中,也不能改变。

    但是,[MTFW2.0]的shader系统有着,解析HLSL(High Level Shader Language)基本的shader源代码,分析出程序中函数的依存关系,把各函数动态的替换成其他函数的结构。也就是说,因为替换了函数,就可以完成做成其他表现的shader。

[meta shader系统的结构图]

[MTFW2.0]中的meta shader系统的结构图]。系统中,对应自动生成的是图中淡蓝色的部分。


生成的shader源代码

    还有,这个函数部分由程序员独立开发扩充。也就是说,要把这个函数群,作为各种材质表现的shader部件来准备,事实上,从一个基本的shader开始,也可以作出其他表现的shader了。

    通过设计师和美术家选择程序员准备的函数,就可以设计shader了,程序员要在源代码上进行shader的基本设计,还要扩充自己设计的函数部件追加实现新的表现,就是这样。

石田先生[即使是基本的阴影处理部分,也能从Blinn-Phong函数简单变化为Cook-Torrance的BRDF。现在的可编程shader架构中,虽然还不能支持函数的覆盖(override),但在[MTFW2.0]的meta shader系统上是可能做到这些的。例如,把函数覆盖后可以过滤输入输出,就可以把这种新的处理装入了。因此,想试验Toon shader的话也很简单。]

[meta shader系统的简单活用图例]

Blinn-Phong Shader


Skin Shader


Toon Shader


由于[MTFW2.0]的光源被做成一般化,如果把Point light替换成Cubemap的话,就可以实现全方面Spot light一样的效果。

    还有,在这个meta shader系统中,要把Vertex Shader和 Pixel Shader在全局解析后实现最优化的结构。迄今为止的shader编译器的最适化是要在Vertex Shader和Pixel Shader各自进行最优化。在Pixel Shader里没有必要的常量和变量参数,对应Vertex Shader 里计算输出部分的代码要做处理,但这个系统中不会有这种的问题。

伊集院先生[由于新的meta shader系统,shader的变种被控制在前作1/10的程度。容量上也控制在3MB字节左右。Shader以区域为单位做阶层管理,作出了这个区域不需要的Shader就不读入的设计。]

 楼主| 发表于 2012-2-21 21:31:16 | 显示全部楼层
本帖最后由 trace 于 2012-2-21 22:03 编辑

[MTFW2.0]上实现了物理模拟的内制化

    关于在[MTFW1]上作为课题的物理模拟,在[MTFW2.0]上从基本的部分,缓慢的通过内制进行替换。

伊集院先生[不论哪个游戏,就像是必要的一样,最基本的刚体物理,布料物理,布娃娃等物理模拟在[MTFW2.0]上做成内制化。但是HAVOK为首的物理模拟中间件提供的高级物理模拟,具体上说有破坏系统,流体物理模拟等,还没做到内置。应用的弹簧物理,柔体物理模拟等已经实现了内制化。]

[在MTFW2.0上内制实现的各种物理模拟]


在[MTFW2.0]上的刚体(rigid body)物理模拟DEMO


在[MTFW2.0]上的柔体(soft body)物理模拟DEMO


在[MTFW2.0]上的布物理模拟DEMO


在[MTFW2.0]上的布娃娃(Ragdoll) DEMO


解释技术革新关系到有效率的支持现场设计师工作的平林先生


担任[MTFW]项目指挥的伊集院先生

    柔体物理在[UE3]上的实现,也是能称为话题的表现。是有着柔软的弹性3D物理的表现,这个一般作为生物的表皮使用。目前在[MTFW2.0]中实现的是,用CPU进行表皮的变形,skinning操作时表皮上的顶点法线的再计算是用GPU实现的,计划最终全部用GPU来实现。

【千里马肝注:因为物理是在CPU上计算的,所以skinning就必须回归CPU计算,才能方便传入物理引擎以产生正确的碰撞。】

平林先生[从我们设计师的立场来看,这样做的技术革新,不仅仅是唤起新的表现,工作效率也提高了。例如,要是把柔体物理用[MTFW1]来制作,必须加入大量的骨骼,这个柔体物理被加入到引擎,就会大量的减少骨骼数量,这样对于运行时的数据量也有好处。]

    现在实验性的挑战基于刚体物理的破坏系统的实现。不过无论如何,现在都是要把[今后CAPCOM的游戏中必要的物理模拟要自己制作]为重点,相反的,如果什么都要固执的自制,在自制过程中消耗的时间和人力成本,要考虑价值的平衡。例如,优秀的性能和各种要素一起做成高质量的表现,在需要自制不能支持的机能时,就要像以前一样把其他公司的物理模拟中间件加入,这个判断与其说是[MTFW]小组,不如说是在游戏的项目组中进行的。实际上[失落行星2]的刚体模拟在考虑各种要素后使用了HAVOK。

伊集院先生[生化危机5虽然是用MTFW1做的游戏,但破坏系统上使用了HAVOK。要是说起生化危机5,有游戏逻辑内置的碰撞判定和HAVOK管理的破坏系统的碰撞判定,他们都作为独立系统来运作。从数据的角度来说,内存里装载两份类似的破坏碰撞用形状模型是浪费了。如果能自己制作统一起来,就可以把浪费节省了。物理模拟内制化的出发点首先就是那里啊!]

 楼主| 发表于 2012-2-21 21:32:56 | 显示全部楼层
本帖最后由 trace 于 2012-2-21 22:06 编辑

[MTFW2.0]上的第一个游戏[失落星球2]怎样了?

    四月时闪电性的公开了预告影像[失落星球2](LP2),作为[MTFW2.0]的第一弹作品来吸引购买者。实际上能让我们看到怎样的视觉体验呢?

    [LP2]在开发初期,是用[MTFW1]来开发的,在开发途中改换成以[MTFW2.0]为基础。在这个过程中,[LP2]中的图形表现上的材质,以[MTFW1]为基础的设计几乎全部结束了。

    因此,在[LP2]里,在[MTFW2.0]采用的方针是使用可以运行「MTFW1」材质的结构。[LP2]上虽然到处都有值得一看的地方,但在技术上非常有趣味的是比[生化危机5]更先进的活动角色与植物的交互。

    因为[LP2] 的时间设定是前作[失落星球](LP)之后,所以[LP1]的舞台[极寒地带]EDN-3rd设定成进入了温暖化,到处都生长着植物。

    这些植物,在[LP2]中会由于枪击和轰炸而产生的爆炸引起的风而摇动着。当然,活动角色和植物也有碰撞,作为背景物体的植物看起来会非常活灵活现。

    植物模型在设计阶段被设计成固定模型,为了驱动,开发了解析模型构造,并把 植物“手臂”信息按顺序生成结构。结果,植物可以实时的和游戏内的场景中的活动角色柔软的交互了。就想CRYTEK的CRY ENGINE3一样,实现出通过枪击,树木树枝从中弹地点折断等表现。


[在[失落星球2]中和竖立的植物产生的互交]


通过软体做出的树(PC和XBox360是用GPGPU,PS3是用SPU驱动)


草的表现


程序生成的背景weight map(要表现出受到某种程度的风的影响)


草木的最终合成场景

石田先生[现状是因为把XBOX360版作为预想来制作,植物的影生成只对主要部分进行生成,但在引擎上也能把生长在地面上的杂草一根根全部对应的投射影子。也许在PC版上有设置这种选项的自由度吧]

    还有,倒下的树木在撞到地面时,不是用刚体物理而是应用了柔体物理。倒下的树枝由于树叶的缓冲效果,绘制出了弹簧那样一下弹起的效果。

    在[LP2]中,像[汪达和巨像]那样,跑到巨大的BOSS上面进行直接攻击的动态战斗表现也被导入,不过,这时在BOSS背上的表皮和褶皱表现上,采用了新开发的柔体物理表现。这次在[MTFW2.0]上的物理模拟,就是理解自制化好处的最佳成果。


体验到[LP2]的BOSS角色的后背的柔软感!


由于全方位Variance Shadow Map ,使[LP2]场景中影的效果很有印象。把点光源生成的动态影子在全方位生成,还要加入Soft Shadow 化的处理。


    今后,在图形表现方面,有考虑导入到[MTFW2.0]或者是[LP2]里面的技术吗。

石田先生[现在不管怎样,都要力图把基本部分充实化,但HDR的DOF模拟等都在讨论中。之后屏幕空间效果和动态Ambient Occlusion等,都是很有趣的试验。]

    关于石田先生的发言内容做个补充说明。。一般的HDR(High Dynamic Range)渲染只在高亮度部分产生Bloom的表现一直被议论着。但实际的HDR渲染上,隐藏着更高照片真实感的可能性。拍摄照片时,焦点不一致的部分如果包含着高亮度的部分,那么就会出现在镜头光圈形状的斑点(Bokeh)。做出这样表现,需要在HDR渲染结果里,加入摄像机和镜头结构的模型化的后期处理。只有高亮度的模糊表现是不能表现HDR的。石田先生应该是想做这个。

[Trace注:UE3和CE3都已经实现了 Bokeh DOF这个特性]





[LP2]的一个场景。雾效果是由[MTFW2.0]的volumetric height fog做出的。考虑了从视线方向的空气层的线性厚度生成的雾。


[结果,实现的图像](石田先生)最后说。[失落星球2]的测试图像。基于摄像机模型的DOF表现。确实出现了六角形的摄像机光圈形状的光斑。

    所谓的动态Ambient Occlusion,是在把全局照明表现在屏幕空间系的后期处理上实现的技术,别名被称为[Screen Space Global Illumination](SSGI)的技术。基本的概念和在本连载的[Gears of War 2]篇中介绍的Screen Space Ambient Occlusion(SSAO)非常相似。SSAO是注重检查像素周围的,计算出遮挡度来添加阴影,而SSGI是注重像素周围的颜色,反映在阴影处理的技术。根据这个可以做出简易型的互相反射的表现。据说CRY ENGINE3也是采用了这个SSGI。

    [LP2]因为还在专心开发中,绝对会让你看到包括这样做出的新表现和还没看到过的视觉。从现在开始期待发售吧。

[Screen Space Global Illumination](SSGI)

通常的渲染结果


SSAO应用状态。脚下的淡影,墙壁和地面交叉点附近的“阴”是由SSAO做出的。
[Trace注:在日本把“阴”和“影”分开解释,阴是自遮蔽产生,影是由其他物体投射产生的]


结果,在采访的最后,SSGI也在[MTFW2.0]上实现。里面的梯子,因为从墙壁的反射的光被照亮了吧。这就是疑似性再现互交反射或二次光源照明的SSGI效果。

 楼主| 发表于 2012-2-21 21:33:30 | 显示全部楼层
本帖最后由 trace 于 2012-2-21 22:08 编辑

结尾---在次世代机登场前,CAPCOM游戏引擎的次世代化


一张[MTFW2.0]的开发画面图例。各窗口出现在了主窗口外面。


[失落星球2]上半透明合成处理的最终画面

    石田先生也那么说,这次的[MTFW2.0]的主题是的[很高的自由度]。

    [用同一个游戏引擎制作的影像也会相似]虽然经常被提到,但在[MTFW2.0]上,程序员因为能够自由的追加也可以说成是着色器部件的函数,所以不会有那样的担心。CAPCOM自制的游戏项目就不用说,就连和CAPCOM关联的游戏工作室,要是使用了[MTFW2.0],各工作室做出的函数都会共享。[MTFW2.0]的图形表现绝对会做成多样化。

伊集院先生[本世代也迎来了成熟期,感觉今后的游戏引擎只有[看着外观很厉害]是不行的。感觉是到了一个不能只靠厉害机能,内存占用量小,性能快和新奇感的时代了。在[MTFW2.0]中,我们为了高机能和容易处理而努力着。在今后,要关注CAPCOM关联的工作室也使用到[MTFW2.0]这点,变的要比[MTFW1]更重要。关于[迷失行星2]游戏的有趣度就不用说了。不过我们为了能达到用户期待以上的影像表现而继续努力。也请继续期待[失落星球2]的发售,还有[MTFW2.0]今后的进化。

在[失落星球2]上的半透明合成处理的结构


Blend buffer RGB


Blend buffer alpha


缩小blend buffer RGB


缩小blend buffer alpha

 楼主| 发表于 2012-2-21 21:35:19 | 显示全部楼层
本帖最后由 trace 于 2012-2-21 22:14 编辑

首先感谢大家捧场

本文时间比较早,又没有太多技术细节
在一些采访发言上也就没有太琢磨细节,如果表达有误也请见谅
不过我想在一些设计思路上,还是值得借鉴的。

接下来是CAPCOM的几篇游戏制作介绍,敬请期待

发表于 2012-2-21 22:23:00 | 显示全部楼层

向着太阳奔跑吧,少年!
沙发!
发表于 2012-2-22 01:35:16 | 显示全部楼层
看着那套编辑器流口水……
发表于 2012-2-23 01:02:02 | 显示全部楼层
这样的文章多多益善,trace辛苦了
发表于 2012-2-24 10:24:50 | 显示全部楼层
这些工具做得好性感.....很佩服他们在不同的硬件上都能按自己的意图做出想要的特性来
发表于 2012-5-8 23:28:43 | 显示全部楼层
感谢让我们看到这么好的文章
发表于 2012-12-27 19:16:41 | 显示全部楼层
trace 发表于 2012-2-21 21:28
MT Framework 2.0也关注了向第三方做扩展

首先,我们向[生化危机5]制作人竹内润先生询问了关于围绕MT Fram ...

学习中!!
发表于 2013-2-11 20:38:42 | 显示全部楼层
版主好强大,我杂现在才发现这论坛尼?
发表于 2015-9-15 22:39:29 | 显示全部楼层
也只是看了,唉,可惜了这引擎技术居然不公开
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|小黑屋|Archiver|手机版|中文第一计算机图形学社区OpenGPU

GMT+8, 2019-1-18 08:23 , Processed in 0.080524 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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