VR设计还处于非常初级的阶段,但我们知道在VR中实现沉浸感的关键是互动性。一位开发者正在将互动性推向极致,通过在SteamVR上推出的Chroma Lab VR体验,让玩家实时操控数十万个模拟粒子。
更新(2017年8月23日):Chroma Lab现已上线。本文最初发布于2017年3月28日,对该游戏的预览进行了广泛更新,包含最新的信息。
VR为我们提供了模拟现实世界和其物理法则的机会,使我们可以身临其境地体验平时无法亲身实践的情境,例如驾驶赛车或驾驶飞机。但是,如果模拟不可能的情境呢?比如,指挥数十万个漂浮着、颜色斑斓的颤动粒子?为了回答这个问题,开发者Sean Tann开发了Chroma Lab。该游戏本周在SteamVR上推出,支持HTC Vive和Oculus Rift,并将很快进入Oculus商店。
Tann将Chroma Lab称为“粒子物理沙盒”,并表示在VR中使用自定义GPU加速物理引擎模拟了超过10万个粒子,帧率达到180Hz。他表示,该物理引擎是使用HLSL计算着色器编写的,并且游戏不依赖任何特定供应商的渲染技术,因此在任何支持VR的GPU上都能够进行优化运行,无论是AMD还是NVIDIA。
该体验最初推出时享有10%的折扣,售价为4.5美元(约合人民币31元)。这个体验“目前只是玩具”,但开发者考虑在未来添加游戏模式,并可能提供DLC。以下是Tann对该游戏的主要特点的描述:
– 美丽的迷幻视觉效果
– 粒子对背景音乐做出反应(与任何外部音乐播放器兼容,可能与蓝牙耳机不兼容)
– 提供拾取、击打、拉动、爆炸、射击和绘制粒子的工具
– 可放置的力场球体,可在粒子之间进行传送
– 可保存和加载场景和设置,还提供一些预设供玩家使用
– 可调整的物理设置,改变粒子行为
– 多种不同的粒子着色器、调色板和其他图形设置可供选择
– 投掷物体进入轨道并创建黑洞
– 可选择的重力和“熔岩灯”模式
– 冻结模拟并逐步推进时间,或减缓时间流逝
– 作为首次VR体验非常出色
– MixCast支持便捷的混合现实
– 原生支持Oculus Rift
– 粒子数量可以自动确定或手动选择
– 可调整缩放和边界,可进行坐位或房间级别的游戏
Tann表示,Chroma Lab的物理引擎不要求高度精细的渲染标准,但能够在AMD R9 290(一款四年前的GPU)上以60Hz的帧率模拟160万个粒子;而如今的高端显卡可能能推动这个限制更进一步。开发者提供了一段视频展示了Chroma Lab物理引擎在早期开发阶段模拟40万个粒子,帧率为60Hz。
对于早期Chroma Lab的预告片在Reddit上的评论,Tann对模拟和其局限性作了进一步解释:
除了显存和尺寸之外,粒子数量没有限制。不考虑开销、渲染和计数排序,所有粒子相关与相互作用的计算时间复杂度都为O(N)。增加游戏空间也会稍微增加计算时间,原因是计数排序,而且会大幅增加显存使用量。我可以使用重复网格实现无限游戏空间,但对于我的游戏来说并不是必需的,并且将粒子放在固定网格中对于未来的物理补充是有用的。
假设流体未被压缩,内部粒子每次迭代会与大约55个其他粒子互动。
所有粒子的计算和数据操作完全在GPU上进行,CPU几乎不做任何工作。
Tann是一位最近获得电气工程硕士学位的毕业生,他表示自己一直在进行这个项目的开发。自2016年1月份开始,他利用自己在大学的业余时间进行了开发,除了在游戏上市前几个月选择全职投入之外。我本以为他之前有开发游戏的经验,但他却告诉我这是他第一次开发游戏,而项目背后的动力是把它作为一次学习经历。
另外,NVIDIA PhysX演示展示了大规模的刚体物理交互,而Chroma Lab迷人且具有互动性的视觉效果让我们想起了Cabbibo的作品,他最近接受了Voices of VR播客的采访。
0