在之前的一个新闻中,AMD和业界一部分开发人员,对NVIDIA的GameWorks进行了不太正面的讨论,焦点集中在NVIDIA的GameWorks比较封闭、没有源代码以及非NVIDIA平台难以优化等……这里有了一个新的概念:NVIDIA GameWorks。什么是GameWorks?GameWorks带来了哪些变化呢?它又和AMD的Mantle有什么差异呢?
在2013年蒙特利尔的一次会议上,NVIDIA推出了一个全新的游戏开发包GameWorks,它整合了NVIDIA的PhysX、TXAA、曲面细分、HBAO+以及FlameWorks、FaceWorks等工具,可以帮助开发者使用NVIDIA的各种3D技术,简化开发流程。在GameWorks中,NVIDIA不但将自己所有的新技术打包加入,更为重要的是,NVIDIA还给出了一整套性能调试、Bug去除、功能验证等解决方案,整个GameWorks横跨Android和Windows平台,并且同时兼容OpenGL和DirectX。这个开发包的作用就像其名称那样—为游戏而生,能为游戏开发者节省时间,还能为游戏带来更好的特效和运行效率。
在早期的游戏开发阶段,游戏开发都是由少数几位主要程序员来完成的。游戏公司或许会在多款游戏上使用同一种引擎技术,随着这些游戏项目越来越大,焦点则变成了制作游戏内容,对开发者来说,更多的特效意味着更优秀的画质,也意味着可以吸引到更多的玩家。由于工期紧迫,开发全新的游戏技术所带来的风险是开发商负担不起的。当今游戏业的技术进步在很大程度上是由供应商把新的游戏引擎技术许可给各个开发商使用。开发商只需要很好地平衡游戏的性能以及新技术在游戏中的比例,同时确保新技术不会出现问题,就能更快、更轻松地打造新游戏。
GameWorks是基于软件层面优化开发的技术,而非优化现成游戏运行效率或者渲染画质的技术,由此看来它和Mantle就是完全不一样的。至于GameWorks到底优化了些什么,怎么实现优化“襁褓”中的新游戏,则在后面慢慢道来……
NVIDIA在自己的开发者网站上公布了有关GameWorks的内容:
1. VisualFX:视觉特效解决方案
2. PhysX:大名鼎鼎的物理特效解决方案
3. CoreSDK:部分和游戏有关的功能实现的代码和接口
4. OptiX:光线追踪引擎
5. Samples:一些实际的案例展示
6. Tools:开发调试工具
下面,本文就为大家简单介绍这六个部分的内容。
NVIDIA将之前开发的有关视觉效果的技术组合起来形成了VisualFX。本文着重介绍其中几个新奇好看的技术。
FlameWorks的实际效果展示中可见和物体有明显的交互。这是因为FlameWorks中的火焰都是真实的粒子,有自己的运动状态。不过,FlameWorks本身需要较高的计算资源,计算网格数量是可伸缩的,在性能较低的产品上可以缩减粒子数量。FlameWorks是完全基于DirectX 11的,AMD的产品同样有可能运行它。