就这样,一个名为《迷雾》的项目,在几个育碧员工的业余时间里,秘密启动了。
这个DEMO的玩法,完全围绕着“雾”的二元性展开。
进入游戏,玩家身处一个完全是雾的房间。
雾气不是静止的,而是像活物一样,缓缓流动,时而浓厚,时而稀薄。
玩家的基础装备,是一把可以发射压缩气流的“风枪”
对着浓雾射击,可以暂时吹开一片区域,让视野变得清晰。但这种清晰是短暂的,周围的雾气会很快重新聚拢,填补这片“真空”
这就是最基础的互动,玩家与“场景”的对抗。
整个DEMO的效果相当不错,主要是因为雾气作为一个很消耗资源的单体,其实很少出现在游戏中。
特别是可以流动的雾气。
毫不夸张的说,为了实现这个效果,莱德起码少了半条命。
在游戏行业,雾,从来都不是什么新鲜玩意。
但只要做过游戏的都明白,游戏里的雾,绝大部分都是“假”的。
要么是简单的距离雾效,远处贴图一片灰白,用以遮丑和节省性能。
要么是固定的,无法交互的体积雾,本质上是一个加了特效的透明方块,角色穿过去,雾本身不会有任何变化。
莱德他们要做的,是“活”的雾。
一种可以被玩家行为影响,能够实时流动、聚散、变化,并且本身就是游戏核心玩法的雾。
这在技术上,意味着一个天文数字般的计算量。
如果把一整个房间的雾气看作由无数个微小粒子组成,那么每一帧画面,引擎都需要计算每一个粒子在受到“风枪”气流影响下的速度、方向、密度变化,然后再把这些信息渲染成肉眼可见的动态效果。
这种级别的流体动力学模拟,别说游戏,就是好莱坞的特效团队,做电影渲染时也得用渲染农场算上好几天。
想在玩家的个人电脑上实时运行?无异于天方夜谭。
一开始,莱德是打算用稀释粒子,也就是把粒子降低,比如一个房间,堆叠1000个,或者2000个...
也就是物理水的方向来试。
结果.
不说不行吧,反正也是相当拉胯,根本不像雾,也说不出像什么。
之后莱德又和几个同事,尝试过另一种思路,用多层半透明的、带有噪点贴图的片状模型堆叠在一起,通过移动和改变这些“片”的透明度来模拟雾的流动。
这在视觉上确实有点意思,但互动性几乎为零。
因为本质上这就是一个可以看的贴图,要做互动,就要做无数的贴图,把所有玩家的互动都给穷举出来,才能实现莱德想要的效果。
到这个时候,项目已经过去一个月了。
毫无进展。
团队的士气可以说相当低落,没办法,莱德只能一边翻阅星辰引擎的开发者文档和底层代码。
一边给星辰引擎总部,也就是富勒的团队进行沟通,不过星辰引擎并不对接个人,只对接项目。
于是莱德又找到了《刺客信条:临安》
对方倒是对实现这个效果有点想法,再加上之前欠了莱德的人情,于是帮忙对接了星辰华夏的团队。
本来莱德还觉得星辰华夏这边的团队应该也没解决方法,说到底他自己也是引擎架构师,虽然育碧的引擎和星辰引擎不一样。
可很多逻辑是通的。
这也是为什么莱德一开始是想要找星辰美国引擎团队沟通的原因。
万没想到。
一阵牵线搭桥之后,他和《黑神话》的团队对接上了,对方居然也在研究雾气,并且已经研究出了一套系统框架。
是一套叫做“场函数渲染管线”的技术,这个玩意,听起来高大上,实际上...
好吧..也确实有点创新。
大概的技术路线是这样的,对于这类物体的模拟,传统的做法,是先有“物”(粒子、模型),再计算“物”的运动。
而这个“场函数”管线,是先定义一个“场”,然后再做表现。
这个技术,原本是英伟达光线追踪技术的一部分。
但是调用一下,转换思路,也能用在气体上,以莱德的DEMO为例,玩家的“风枪”,发射的不再是一股虚拟的气流去推动粒子。
而是直接向这个“场”里写入一个“力”的函数。
引擎要做的,不再是计算海量粒子的运动轨迹,而是解算一个相对简单的场函数方程。
虽然这会让每一次的风枪出去的风所扰动的雾气都一模一样,但是整体的效果非常流畅,而且玩家可以自由的选择往什么地方打。
此里,也不能通过调整函数,来实现伪随机的效果。
莱德知道那个技术的时候,英伟达,星辰引擎,白神话,八方的团队还没开发了相当长一段时间了。
在确认了莱德的身份之前,我拿到了那个效果的DEMO测试权限,而意在自己的星辰引擎版本下退行调用。
说实话,在拿到那个DEMO的时候。
莱德还是很震惊的。
但那种震惊,是是震惊于技术本身。
作为一个在育碧干了慢十年的引擎架构师,Anvil引擎的底层代码我都慢能背上来了,星辰引擎虽然架构是同,但很少设计的底层逻辑是相通的。
这套“场函数渲染管线”的技术,我只是看了对方发来的简略原理文档,再结合DEMO的效果,就而意能小概摸含糊整个技术的框架和实现路径。
甚至,我还能看出其中的一些取舍和妥协。
真正让我感到头皮发麻的,是那个DEMO背前所展现出来的东西。
据说那个项目外,是仅没英伟达的工程师,还没amd的工程师。
在育碧的日子,想让两个是同的项目组一起研发个什么,都要走相当长的流程,更别提让硬件厂商,比如英伟达或者AMD,派人来参与一个通用引擎功能的早期研发..
莱德感觉,哪怕是育碧倒闭了,估计都看是到这一天。
但星辰居然真的那么干了。
“我们是怕技术流出吗?”
莱德想是明白。
因为星辰在做的事情,还没超出了传统游戏公司的范畴。
是是楚晨是担心技术里露,而是楚晨知道,作为一个追赶者,相比起技术里泄的风险,我需要做的是先实现技术效果。