《魔兽》6.0技术科普 德拉诺之王的图像引擎进化
暴雪昨天发布了一篇新的开发者日志中,对《魔兽世界》在游戏画面上即将发生的重大改变进行了详细的介绍。
在我们开始之前,要先说明一点:接下来的这些文字会具有相当的技术含量,主要是解释与抗锯齿相关的图形设置的改变。你们中的大多数人估计根本不会意识到这些变化,这主要是面对那些喜欢自己调节画面设置和捣鼓硬件的玩家的。
简单的说,我们将对《魔兽世界》的性能进行优化,但同时也要确保在未来有提高画质的潜力,并强化对高端CPU与显卡的支持。
在《德拉诺之王》中我们将移除多重采样抗锯齿(Multisample Anti-Aliasing,MSAA),用一种新的抗锯齿技术,保守形变抗锯齿(Conservative Morphological Anti-Aliasing)取而代之。这一改动能让我们对《魔兽世界》在接下来的几年里实现一系列早就应该进行的技术进步,我们要目光长远嘛。
过去的十年里,《魔兽世界》都在使用MSAA,主要是因为GPU会有足够的时间和资源来进行处理。WoW在大部分时间里都是一个更依赖CPU的游戏,而在WoD的开发过程中,我们决定做出一些改变。很大的一部分工作量被用在了分析代码的整个数据流,确保只对每一帧中必要的部分做出改进。一个例子是,我们现在会依据距离和视野来动态调整骨骼动画的渲染数量(这种做法也被称为细节层次处理,Level of Detail,LoD),而这正是CPU运算时间的大户。我们同时还为引擎添加了一个序列系统,让引擎可以对动画与场景进行任务分配,这个技术我们在5.4中进行了试验,并在WoD中扩展了出来。
这一系列改变的结果是显著的,现在的《魔兽世界》对GPU的依赖要大了很多,占据了原本用于处理MSAA等效果的大量资源。我们尝试了多种方案来调节游戏的GPU需求与抗锯齿需求之间的关系,最终决定在《德拉诺之王》中选择CMAA作为我们的抗锯齿解决方案。和所有涉及视觉效果的改变一样,我们在此之前与工程和美术团队进行了沟通,最终做出了用CMAA取代MSAA的决定。CMAA提供了优秀的抗锯齿效果,而内存消耗与性能损失只有MSAA的零头。它同时与我们在未来计划实现的一些技术具有良好的兼容性,帮助我们尽快将这些新技术加入游戏。我们同时还会支持快速近似抗锯齿(Fast Approximate Anti-Aliasing,FXAA)这一消耗更低的反锯齿方案,供仍在使用DirectX 9的玩家选择。
CMAA让我们实现了低消耗高质量抗锯齿的目标,同时给了我们进一步提高游戏画面质量的空间。我们不需要为CMAA对引擎的结构进行改动,而在《德拉诺之王》中我们已经实现了包括目标高亮、软粒子、新的阴影技术和光源折射在内的多种新图像效果,并且会在未来的补丁和资料片中添加更多。
在《德拉诺之王》上线时,CMAA将是高画质选项的一部分,而在发售之后,我们将为使用高端显卡的玩家提供更多的选择,如果它们同时具备很高的质量和与我们未来计划的兼容性,我们将认真地做出考量。
《魔兽世界》的图像在未来将有更多光明的前景,在《德拉诺之王》中实现的改变则为我们在未来让游戏变得更加绚丽打下了坚实的基础。