我正在开发一个多人生存游戏,很快就意识到标准Unity NavMesh 无法处理数以千计的敌人。
为了解决这个问题,我决定阅读一些技术教程(感谢 AI 学习模式!)。然后,我决定采用以下自定义解决方案:
- 流场寻路:基于广度优先遍历的网格,可以一次获得所有敌人方向矩阵。
- Unity Job 系统:所有事情(移动、分离、采样)都在工作者线程上并行运行。
- 批次射线检测:使用射线命令来保持敌人在地面上,而不耗尽主线程。
- 空间散列:使用 NativeParallelMultiHashMap来实现局部避让和分离。
目前,这仍然处于施工当中,我决定跳过 ECS 以节省实现时间,但性能已经很坚固了。
如果您想同我讨论更多的建议,我是开放的。
Steam 中可以查看最新版本: Riftbound Survivors
评论 (0)