EVE Online 开发商 Fenris Creations 开源 CORTAO 渲染技术
Eve Online maker Fenris Creations is adding a rendering technique to its open-source Carbon engine that promises more accurate shading and greater depth
Eve Online 的开发商 Fenris Creations 在今年早些时候开源了其 Carbon 引擎,现在正以 CORTAO 的形式对这项技术进行重大补充。
CORTAO 是 Circular Occluder Ray-Traced Ambient Occlusion(环形遮挡光线追踪环境光遮蔽)的缩写,这是一种新的渲染技术,能够提供更准确的阴影和更强的深度感,同时声称能将渲染成本保持在较低水平。
它最初是 Fenris 图形程序员兼渲染工程师 Daniel Isheden 的个人项目——正如所有伟大的创新一样,它源于对某个特定问题的强烈感受。在这种情况下,这种感受是对现有最先进渲染技术的“愤懑”。具体来说,Isheden 试图解决一些与植被相关的问题,尤其是 Eve Online 中并不常见的内容。
“目前最先进的技术被称为真实环境光遮蔽(Ground Truth Ambient Occlusion,简称 GTAO),”他解释道。“我尝试使用它时发现了很多问题。我意识到它实际上并没有收敛到真实值。我开始研究如何真正获得能够收敛到正确结果的方法,前提是相关信息确实存在。”
那么 CORTAO 是如何工作的呢?它是一种屏幕空间环境光遮蔽(Screen Space Ambient Occlusion,SSAO)技术。对于不太关注技术细节的人来说,这种方法旨在根据环境光照计算阴影的呈现方式。
“这些技术受屏幕空间限制,因此它们仅处理屏幕上可见的信息,”Isheden 表示。“从这个意义上说,这是一种非常粗略的近似。但它无法获知当前在屏幕上不可见的任何内容。不过我认为 CORTAO 至少是一种能够利用这些信息来计算极其接近正确结果的技术——前提是你确切知道场景的外观,而不仅仅是屏幕上显示的内容。”
那么,CORTAO 为何比其他技术好得多?Isheden 指出,现有技术的重点在于“水平角度”,这为非平面表面带来了问题。
“这是一种完全不同的方法,通常来说本应难以实现。”
“基本上,[现有技术]通过观察像素周围的地平线角度来计算进入特定像素的光量,”他解释道。“问题在于,当计算倾斜表面时,这种方法根本不正确。由于屏幕空间的限制,它无法正确做到这一点。”
“我的技术则基于屏幕空间光线追踪。它在屏幕上发射光线,每个像素最多32条,然后根据被遮挡或未遮挡的光线数量,计算出到达该点的光量。这是一种完全不同的方法,通常出于性能考虑本不可行。我工作的主要贡献或核心部分,实际上是让这种方法能够实时运行,并且足够快以具备实用价值。”
更进一步
据 Isheden 介绍,CORTAO 能产生与其他渲染技术相同的结果,但平方误差仅约为后者的四分之一。他说:“你可以降低 CORTAO 的质量,仍获得与现有技术相同的精度水平;也可以保持相同的质量,转而获得更好的性能。”
这项技术代表了重大进步。伊什登表示:"基本上它更快也更便宜," "这就是长话短说。但 CORTAO 的真正优势在于,它能够达到以往这类屏幕空间技术无法实现的质量水平。它在处理深度不连续性等方面要好得多。"
CORTAO 将推出两个版本,均为开源。第一个是伊什登自己的迭代版本,即官方参考实现——以 MIT 许可证发布;第二个是通过 Carbon 发布的版本,该版本已经开源。
“这会更偏向于满足《Eve》的需求,因为我们的太空场景有着巨大的景深范围,既要能在玩家眼前的小型飞船上呈现环境阴影,也要能在数百公里外的巨型结构上做到这一点,”Isheden 说道。
如前所述,CORTAO 最初是 Isheden 的一个个人项目,他在办公时间之外进行开发——Fenris 的高级开发总监 Ben Hunter 表示,公司“绝对”欢迎员工带来的类似创新。
"这与开源相辅相成,我想我之前提到过:水涨船高,"Hunter 说。"我们相信可以分享和协作,并从中共同受益。我们看到了 Daniel 这个副项目的潜力,很高兴他愿意为其找到一个良好的用例。这实际上是流程的一部分。你可以拥有出色的创新,而这无疑是一种创新的思路。
“但它也需要在真实环境中经过实战检验并加固。这最终是丹尼尔希望达成的目标,当然我们也希望受益于这种创新方法,并且能够为此后的发展做出贡献。此外,我们二人都非常一致地主张将其开源,以便其他人也能从中受益。”
目前还有一个类似的项目正在推进中——这是芬里斯(Fenris)员工的创新成果——但亨特对此暂时守口如瓶,仅透露该项目“尚处于非常早期的阶段”,且更多涉及利用大型语言模型进行创新。
“这正是大型语言模型的价值之一,例如能够在不影响当前优先级或方向的情况下开展多个副项目,”亨特解释道。
“我们可以非常快速地收获许多想法,目前也有许多人正在做一些有趣的事情。但还没有任何成果达到值得我们公开讨论的程度。”
开源之旅
四个月前我们上次与亨特交谈时,芬里斯(Fenris)正处于将其Carbon引擎开源的过程中。到目前为止,亨特认为进展顺利,尽管最大的变化是公司现在处于公开开发的状态。
“我们直接向可被检查的仓库提交代码,并且我们已经获得了大量该仓库的分叉版本,”亨特表示。
“我认为仅在渲染方面,这大概是关注度最高的部分,我们至少有70多个仓库被分叉出来,人们正在做各种各样的事情。”
似乎大家对于尝试在Web应用中使用渲染功能有着浓厚的兴趣。围绕《EVE Online》,许多社区成员希望展示他们的飞船皮肤,或开发各种辅助应用程序以可视化游戏内的内容。
“我们还收到了大约 60–65 份来自社区的 Carbon 提交——包括各种错误修复、改进和安全更新,以及一两个与小型功能相关的内容。我们有几位非常热情的开源开发者,他们非常努力地推动添加 Linux 支持,这真的很令人关注。”
“总体而言,反响非常好。这正是我们所预料的:会有一小部分人愿意做出贡献,并提升我们已有的水平。”
下一步是将这些工具开源。这最初定于2026年底,但已被推迟到明年第一季度。
"几乎每天,都有新的游戏团队向我们展示他们刚刚创建的工具"
"主要原因在于我们退后一步,审视了人们将如何使用这些工具,"亨特继续说道。"我们非常强烈地认为,在大型语言模型(LLM)领域,人们希望能够修改和扩展这些工具,因此我们希望确保存在一种结构,以便能够轻松实现这一点。过去几个月,我们一直在为这些工具开发插件扩展架构,这在内部确实非常有趣且令人兴奋,因为我们从未想到游戏团队会对这些工具的扩展产生如此浓厚的兴趣。"
“几乎每天都有新的游戏团队向我们展示他们在这个新插件架构中刚刚创建的工具。这正是我们想要的,因为它向我们内部表明兴趣确实存在。添加这些插件的许多开发者并非工程师;他们也在使用大型语言模型。主要是艺术家,但也有一些游戏设计师。”
他总结道:“这给了我们验证,证明这是正确的方向。因此,当我们明年年初发布它们时,我们知道社区也能够做到同样的事情。”
来源:GamesIndustry.biz · 全球游戏产业 · gamesindustry.biz