大家好!

我对游戏开发还很新,目前正在开发我的第一款游戏,一款面向 Android 的 3D 俄罗斯撞球游戏。

我要坦白地说:我大部分代码都使用 AI 工具帮助,同时在学习 Unity 和游戏开发。

我其实已经为游戏取得了相当大的进展,但遇到了性能问题,一直找不到解决办法。

以下是我的当前设置:

  • 引擎: Unity 6 (6000.5.7f1)
  • 平台: Android
  • 图形 API: OpenGLES3
  • 测试设备: MediaTek G200 Ultra,8 GB RAM
  • 高画质设置下的 FPS: 10–15
  • 平衡设置下的 FPS: 约 25
  • 场景: 一张撞球桌、16 颗球、一个台球杆以及装饰好的室内环境。

该场景之前的低 LOD 资产约有 90 万三角形,经过多次优化后,当前高 LOD 资产约为 617K 个三角形。

我迄今为止尝试的措施:

  • 降低多边形数量
  • 实现 LOD(层次细节)
  • 禁用 HDR 和 MSAA
  • 减少阴影设置
  • 禁用额外灯光
  • 调整图形质量设置

我已经多次请 AI 帮助优化项目,但性能依旧很差。

我意识到依赖 AI 生成的代码可能导致低效实现,而且因为我还在学习,可能忽略了显而易见的问题。

我目前还未能从 Android 设备上获取到正确的 Unity Profiler 数据,这使得弄清实际导致问题的原因更加困难。

我很感激能得到以下几方面的指导:

  1. 大约 60 万个三角形对于移动端撞球游戏来说已经太多了吗?
  2. 问题可能与着色器、材质、调用次数(draw calls)或其他因素有关,而不只是多边形数量?
  3. 你建议先检查什么?
  4. 有没有适合初学者的资源,教大家如何正确地给 Unity 游戏进行 profiling 和优化?

我真心希望学习并改进,而不是单纯让 AI 来修复一切。

这是我的第一款游戏,我真的很想让它在移动设备上运行顺畅。

我知道自己可能犯了很多新手错误,但任何建议都会让我受益匪浅。

另外,如果这段帖子违反了子版规则或放错了地方,我感到抱歉。作为新人,我还在学习,请告诉我应该发到别的地方吗。

感谢大家的时间和理解!