专栏名称: 映维网Nweon
映维网是一个始于2014年10月的增强现实(AR)、虚拟现实(VR)产业信息数据平台,专注于AR/VR产业发展及市场教育培养,致力于引导全球AR/VR产业发展,服务于全球各地的AR/VR创业者。
51好读  ›  专栏  ›  映维网Nweon

开发达人挑战用Python开发了一款VR射击游戏

映维网Nweon  · 公众号  ·  · 2024-12-12 23:03

正文

用Python开发VR游戏

映维网Nweon 2024年12月11日 )对于大多数开发者而言,用Python开发VR游戏听起来并不是最有效的方法。然而,开发者DaFluffyPotato接受了挑战。

开发者DaFluffyPotato对VR游戏开发并不陌生。但由于当前的引擎存在局限性,而且即将到来的3D游戏需要新的开发堆栈,DaFluffyPotato找到了Python, GLFW, ModernGL和OpenAL的独特组合,以创建一款的VR射击游戏。

令这一切成为可能的一个关键是名为PyopenXR的项目。PyopenXR为OpenXR提供了Python bindings。因为OpenXR不渲染图形,只有服务器与XR设备进行通信,所以开发者使用了ModernGL,这是一种用于Python的高性能渲染模型。另外,堆栈使用GLFW创建窗口并处理输入。在测试此设置时,DaFluffyPotato发现了来自PyopenXR的memory leak,但他们后面找到了bug所在并修复了问题。

换句话说,这个堆栈可以用于开发3D游戏。DaFluffyPotato创建了一个带有完整资产设置的功能原型,包括武器,角色,游戏物理,“我的世界”风格的方块环境,以及NPC。唯一缺少的是空间音频;幸运的是,OpenAL可以很容易地提供3D音频,并具有类似于ModernGL的实现工作流。

游戏启动速度很快,启动时间约为几秒钟,比大多数VR游戏快得多。另外,游戏不会占用CPU资源。总的来说,这是一个令人兴奋的项目,DaFluffyPotato已经有了未来更新的计划,包括更好的NPC和多人游戏。







请到「今天看啥」查看全文