原文:西川善司
 
最终幻想15的演讲会场。相当大,听众非常多。
 
   在本次计算机图形和交互技术大会【SIGGRAPH 2016】上,和游戏相关的CG技术解说方面上,SQUARE ENIX有很强的存在感。这个计划于2016年9月发售的【最终幻想15】的制作相关的会议,很多人都预订参加了。对于外海也有很高关注度的FFXV,有可以了解开发内幕的机会,多数的游戏开发者当然不会错过的。
 
    这次报道的是,最终幻想15会议之一的【Visual Effects of Final Fantasy XV:Concept,Environment and Implementation】(最终幻想15的视觉特效,概念,环境与实现)。
    演讲者是SE的第二商务部的高级程序员長谷川 勇氏和负责实时VFX的主管小山正彦氏,以長谷川氏和小山氏按自己负责部分来交替说明的形式来进行演讲。
    此外,本次报道中的画面和动画,还是在开发中的内容,也可能和实际的游戏有所区别。
 
長谷川 勇氏(高级程序员,SE第2BD)
 
小山正彦氏(实时VFX主管,SE)
 
 
会议分为了3大部分

以实现有说服力的照片真实表现为目标的FFXV的视觉特效

 
FFXV的视觉特效,是以追求照片真实来制作的
 
   首先登台的長谷川氏,对FFXV的图形开放概念【说服力高的照片真实表现】做了说明。
   長谷川氏提到,FFXV,是以现代场景和幻想场景共存的世界为舞台的幻想RPG游戏,描绘出的游戏表现都是幻想出来的。但是,世界中真实的火和水,以及烟雾等现象,以及光那样的能量的处理,是完全和现实世界一样来描绘的。
    比如,魔法产生的火即使是虚构的,但出现后还是会蔓延,火焰的光也会照亮周围,和现实视觉的物理现象是一样的,这也是为什么要在绘制上这么讲究。
 
即便是魔法攻击产生的火焰,视觉效果也要和现实的火焰一样的绘制
 
 
FFXV的特效视频展示
 
基于物理渲染(PBR)和线性工作流(LWF)以及高动态范围(HDR)这些关键词,在FFXV的特效上讲究的要点
 
   另外小山氏这边,对FFXV的渲染管线对基于物理渲染(Physically Based Rendering,简称PBR)中,线性空间的亮度值(颜色值)的处理做了说明。
 
    这里提及的线性空间,是不考了显示器的配置(亮度),与现实世界的物理等价的数值表现体现。事实上的高动态范围(HDR)渲染也是的。
 
    这种渲染管线的线性空间处理方法,在电影和CG的用语里也叫做【线性工作流】(Linear Work Flow,简称 LWF)。FFXV的特效也是全部是用LWF来制作的。
 
FFXV的特效也是全部是用LWF来制作的
 
    【关于FFXV的PBR和LWF的效果,最生动和有代表性的材质就是"水"了】小山氏叙述到。
    要正确的表现水的效果,需要镜面反射(Specular),透明度(Transparency)和折射(Refraction)的3个要素。在PlayStation 4世代的游戏开发中,是把透明物体和不透明物体区分,并且一边在保留镜面反射的同时一边降低透明度来制作表现,提升水表现的真实度。
 
 
FFXV中水花表现的视频
这里是强制静止的,实际是可以看到水散落和真实运动的。折射效果和镜面反射的高光也很显眼

FFXV的视觉特效制作方针

 
    接下来小山氏,对开发团队在视觉特效(VFX)的完善方法上做了解说。
 
    FFXV的开发团队里的VFX美术师傅也是有多个人的,每个美术师都可以从零开始委托制作视觉特效,每个人的做法也不一样,要全体的统一也很难。所以,首先是公司内部开发了个人的基于节点的VFX制作工具,让理解工具规格的成员制作预设(基本的风格)的VFX,在基于这些让每个VFX美术来组成节点制作效果,彻底的贯彻了这样的流程。
 
 

 
    这里说道的节点,就是下图中一个个的功能块。
 
每个VFX美术师,核心成员小山氏制作的预设VFX,来组成特效。
 
    全体VFX美术师并不是都精通这套结构,考虑到稳定的品质保证和制作效率,这样的制作风格是很不错的,小山氏回顾到。
 
 

基于节点的VFX工具使用的相关问题和对策

    在FFXV的开发中,虽然采用了基于节点的VFX制作工具来制作视觉特效的方式,但还是遇到了一些问题。
   例如,冻结特效会大量产生多个物体对象,结果会让特效规模变的很大。还有在特效性质上,短时间内产生和销毁这样多次反复的情况很多。
 
大量的复数特效产生和销毁的演示
大量特效一瞬间出现和销毁。
 

 
    大规模的特效会消耗很多内存,在短时间内反复生成和销毁的情况下,特效的启动和关闭会成为overhead,最后的处理负荷也会变高。FFXV使用了2种方法来处理这种问题。
 
使用了【Grouping】和【Formulation】做为解决方案
 
大量生成的特效和生命周期短的特效会引起的问题
 
    1个方法是【Group化】。对于大量生成的特效,把构成特效的节点群分组来管理,按组来生成和销毁的处理,来改善内存的利用效率。
 
通过Group化来改善内存的利用效率
 
    第2个方法是【公式化】(Formulation)。这个是把特效内包含的复杂节点结合,可以理解为把复杂节点合成1个【虚拟节点】来管理。把多个节点用1个虚拟节点来处理,这样就减少了无用的启用和销毁处理。
 
通过公式化,把大量的节点用虚拟的1个节点来做处理
 

FFXV的视觉特效中采用的程序化纹理

 
FFXV的视觉特效中,一部分也采用了程序化纹理技术(Procedural Texture)
 
 
    小山说明到,在FFXV的开发中,也致力于解决以前日本游戏开发中没有怎么挑战的新主题。这个就是【程序化技术的使用】,FFXV中的一部分视觉特效使用的纹理,是采用程序化来生成的。
    FFXV中,视觉特效使用的一部分纹理,并不是美术师手绘而使用软件的算法自动生成的。
    具体的,攻击特效和Lens Flare这些,面积比较大的特效使用了程序化纹理。向画面整体的广阔范围扩展的纹理,因为手绘的原始分辨率扩大和缩小,表现品质会可能会下降。但程序化生成的纹理,无论如何的大小都可以生成没有伪和感的纹理。动画纹理也是一样,程序化生成的话循环和重复表现也不会很明显。
 
魔法的电击和闪光的表现,或是lens Flare等效果,都是程序化纹理技术的示例
 
    当然,并不是所有的视觉特效都可以用程序化纹理,以前那种连续画像预先生成的动画纹理FFXV里也有使用。
 
    例如,前面动画里演示的水花的动画纹理,就是连续图像的粒子。虽说如此,“但不之是半透明的Billboard,也包含了模拟水花特有的凹凸细节的法线向
量这种只有次世代机才有的内容”小山氏提示到。
 
水花特效使用的连续动画纹理的示例。但并不是1张图的排列,还包含了表现细微凹凸的法线响亮,在绘制时进行bumpmapping。
 
    FFXV的特效制作使用的基于节点的工具,虽然笔者以前也听过,但并不知道还使用了程序化纹理技术。这个会议可以说是让FFXV【大概使用了全部的近代图形技术】这点变得清晰了吧。
 

 
 

 

【SIGGRAPH】用【有说服力的照片真实】技术实现最终幻想15的视觉特效的更多相关文章

  1. 罪恶装备 Xrd REVELATOR 3D进化出的非照片真实视觉

    GUILTY GEAR Xrd REVELATOR 3D进化出的非照片真实视觉 罪恶装备系列是用2D日系动画一样的惊异视觉来吸引玩家的. 最新续品[GUILTY GEAR Xrd-REVELATOR- ...

  2. 【翻译】CEDEC2014 CAPCOM 照相机正确的照片真实的制作工作流

     这次带来的翻译是Capcom在CEDEC2014上发表的技术美术相关的资料.资料的目的,就是在已经拥有了一套基于物理的渲染引擎的前提下,如何进行图片真实的材料的拍摄并制作为引擎里的材质,以及如何正确 ...

  3. ReCap 360 photo照片建模技术的又一个例子

    这是我做的又一个利用Autodesk ReCap 360 照片建模技术做的一个例子.你可以下载模型自己把玩,或者下载原始照片自己试一试. 拍摄工具: 小米手机 照片数量:约120张 后期处理工具: p ...

  4. JELLY技术周刊 Vol.15 云游戏会是 5G 杀手级应用么?

    蒲公英 · JELLY技术周刊 Vol.15 听到"云游戏",或许我们的第一反应会是"云玩家"而不是那些上云的"游戏",在这个 5G 已来的 ...

  5. 有return的情况下try catch finally的执行顺序(最有说服力的总结)

    结论:1.不管有木有出现异常,finally块中代码都会执行:2.当try和catch中有return时,finally仍然会执行:3.finally是在return后面的表达式运算后执行的(此时并没 ...

  6. [Mugeda HTML5技术教程之15]案例分析:制作移动教育课件

    本文档要分析的案例是一个一氧化碳还原氧化铜的教育小课件,从中可以体会一些Mugeda API的用法和使用Mugeda动画制作移动教育课件的方法.Mugeda为移动教育领域和移动数字出版领域提供理想的教 ...

  7. 那些H5用到的技术(6)——数字滚动特效

    前言原理源码使用方式补充CountUp.js 前言 会有这么一种情况,H5页面需要进行数字统计展示,以此来强调产品or工作的成果.如果只是静态显示一个数字,总是感觉生硬.对比如下: 是不是瞬间高大上了 ...

  8. 【SIGGRAPH】【最终幻想XV】的战斗场景实时演示的要点解说

    [SIGGRAPH][最终幻想XV]的战斗场景实时演示的要点解说 原文:西川善司 http://www.4gamer.net/games/999/G999902/20160730004/        ...

  9. paper 86:行人检测资源(上)综述文献【转载,以后使用】

    行人检测具有极其广泛的应用:智能辅助驾驶,智能监控,行人分析以及智能机器人等领域.从2005年以来行人检测进入了一个快速的发展阶段,但是也存在很多问题还有待解决,主要还是在性能和速度方面还不能达到一个 ...

随机推荐

  1. 服务器控件和 viewstate

    //不会产生处理回发事件的方法.类似客户端html Repeater rep = new Repeater(); DataList dtl = new DataList(); FileUpload f ...

  2. NSDictionary、NSMutableDictionary及其枚举器的用法

    .不可变词典NSDictionary 字典初始化 NSNumber *numObj = [NSNumber numberWithInt:]; 以一个元素初始化 NSDictionary *dic = ...

  3. jQuery的事件委托实例分析

    事件委托主要是利用事件冒泡现象来实现的,对于事件委托的精准的掌握,可以有利于提高代码的执行效率.先看一段代码实例: <!DOCTYPE html> <html> <hea ...

  4. BZOJ 1179 Atm 题解

    BZOJ 1179 Atm 题解 SPFA Algorithm Tarjan Algorithm Description Input 第一行包含两个整数N.M.N表示路口的个数,M表示道路条数.接下来 ...

  5. URAL 1223. Chernobyl’ Eagle on a Roof

    题目链接 以前做过的一题,URAL数据强点,优化了一下. #include <iostream> #include <cstdio> #include <cstring& ...

  6. jQuery 基本过滤选择器注意点

    $(".add_shuxing_ul > li:first")  选择class为add_shuxing_ul 的子级li元素的第一个li $(".add_shux ...

  7. HDU 1102 最小生成树裸题,kruskal,prim

    1.HDU  1102  Constructing Roads    最小生成树 2.总结: 题意:修路,裸题 (1)kruskal //kruskal #include<iostream> ...

  8. UICollectionView集合视图的概念

    如何创建UICollectionView 集合视图的布局UICollectionViewFlowLayout 自定义cell 布局协议UICollectionViewDelegateFlowLayou ...

  9. Flex Flash Player回声消除的最佳方法

    Adobe Flash Player 已经成为音频和视频播放的非常流行的工具.实际上,目前大多数因特网视频均使用 Flash Player观看. Flash Player 通过将许多技术进行组合可以提 ...

  10. [zt]系统中常用MIPS指令

    指令 功能 应用实例 LB 从存储器中读取一个字节的数据到寄存器中 LB R1, 0(R2) LH 从存储器中读取半个字的数据到寄存器中 LH R1, 0(R2) LW 从存储器中读取一个字的数据到寄 ...