大家好!

我不是游戏开发者,但我已经有超过8年的时间扮演着《魔兽世界》和《龙与地下城》的导演。

我开始玩游戏的原因是找不到团队,所以我就自己组建了一个团队,我们已经玩了两个剧情并且这个最后一个剧情已经持续了5年。从一开始我们就一直在网上玩,因为我们所有人都有成年人的生活并且都有孩子,所以这是我们唯一的选择。

为了实现网上游戏,我不得不学习像roll20这样的大型游戏平台,但它总是感觉很笨拙,难以维护并且每月都要花费,所以我开始寻找替代方案,最后我发现了FoundryVTT,这个平台只需要一次付款并且可以在任何电脑上安装,然后通过网络知识,可以让玩家在线加入。

从那时起,FoundryVTT就为我们工作了,但我一直遇到网络延迟的问题,地图因为我的GPU而崩溃,我的玩家因为网络不稳定而下载所有资产,总的来说它一直很难维护并且学习曲线很陡峭……我花了很长时间都卡在这里了,因为它的2D特性并且我们不能在现实中玩。直到去年我开始学习Python编程,然后学习JS、TS、C#等。

编程使我意识到我可以实现什么,我决定让我的玩家游戏体验更沉浸,所以我开始了我的项目,它是一个不需要游戏电脑的3D虚拟桌面。

起初我想让它像流媒体技术一样,让玩家流式传输游戏到他们的电脑上,但尽管这证明是可行的(我成功测试了它),但它在服务器端是非常耗GPU的,根本不可能管理,并且每个用户的成本会非常高……我使用Unity的Render Streaming技术并且让它在多个客户端同时工作,这远远超过了实际系统允许的。

我感觉非常绝望,我花了6个月的时间试图让它工作并且它确实工作了,但快速看一下它消耗的资源就足以使这个项目不切实际。

然后在几周后,我突然想到了使用WebGL(Three.js),我开始学习它,并且它基本上工作了,因为它基于CPU,我可以创建3D世界并且消耗非常少的CPU,所以我开始寻找如何使它更好或者是否有一个引擎可以使用,最后我找到了一个!……我终于开始了,花了10个月的时间在兼职开发,偶尔1小时,但我一直在工作。

我觉得分享这个故事是因为我最近读到了一个帖子,一个 guy感觉绝望并且想分享他的旅程并且鼓励其他游戏开发者在 solo开发并且不太社交的时候。所以我就来这里了。

目前,我已经建立了我的游戏服务器使用bun + websockets,并且建立了前端使用Angular和后端使用Django与postgres数据库……我也建立了所有的认证循环,游戏加载,游戏持久化,场景管理,地图编辑器和总体导演游戏体验与UI包含,我已经领先得多了,甚至让我感到激动。

我的游戏是一个基于Web的3D虚拟桌面,任何人都可以直接进入页面,启动游戏并且玩耍,而不需要下载任何东西,所有的资产都是超级优化的Web,并且玩家可以创建(作为导演)所有地图并且使用优化的资产,所有的东西都是流式传输的并且非常轻量级。虽然在未来我希望添加WebGPU支持。

唯一缺失的就是艺术部分了,学习创建3D资产真的很难,但我已经学习了一半的Blender环境创建课程并且购买了一个角色创建课程,我想这将是最耗时的部分,我可以解决技术问题,但创造艺术想法真的让我头痛。

我会确保分享demo一旦它达到了一定的完善状态,就让你们来玩耍测试。直到那时,我就是一个机械工程背景的爸爸,带着3个孩子,试图创造最沉浸最好的3D虚拟桌面游戏。

感谢阅读并且分享你们的想法,如何才能使我的游戏发布更好?