unity-game-engine - 正在开发 VR 游戏,但它太慢了

标签 unity-game-engine virtual-reality

我正在开发一款基于VR的Android游戏,玩家可以在游乐园中自由走动,游乐园里摆满了摊位、玩具、摩天轮、轨道和其他嘉年华游乐设施。现在,如果我放置一个像铁轨和摩天轮这样的大网格,每个网格都有大约 400k+ 的多边形,当我在智能手机(galaxy s7 edge)上运行它时,我会在 VR 中查看扫描时遇到卡顿和滞后的情况。我还减少了一些对象的多边形,固定了纹理分辨率,但仍然无法接近以 50-60fps 运行。

enter image description here

enter image description here

最佳答案

如果您要为 Oculus 平台构建它,以下是一些性能要求:

  1. 每秒 60 帧
  2. 每帧 50-100 次绘制调用
  3. 每帧 50k – 100k 多边形
  4. 脚本执行花费了 1 ~ 3 毫秒(Unity Update())

优化您的游戏:

  1. 使用Lightmaps/烘焙灯光而不是运行时/动态照明。
  2. 将静止对象标记为静态以使用静态/动态 batching 。这将减少绘图调用。
  3. 使用Oculusion culling以节省渲染能力。这将减少 tricount 和drawcall。
  4. 将单独的纹理放入更大的纹理图集中,从而减少对象中使用的 Material 。
  5. 使用压缩纹理来减小纹理的大小。
  6. 在导入纹理时使用“生成 MipMaps”选项以节省 GPU 电量。

Read More关于 VR 优化。

Read More关于Unity中的图形优化

希望这有帮助

关于unity-game-engine - 正在开发 VR 游戏,但它太慢了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40790519/

相关文章:

c# - 循环处理 JSON 销售数据以在 Unity 中创建图表的最佳方法是什么?

c# - 如果字符串数据数组不同,则增加位置 C# (Unity)

ios - SKVideoNode(嵌入在 SKScene 中)作为 Scene Kit 节点的纹理不起作用

ios - Google Cardboard - 是否有适用于 Cardboard VR 套件的 iPhone/iOS 入门项目?

c++ - 将鼠标事件发送到虚拟现实 OpenGL 场景中的 QtQuick 窗口

c# - 朝向地平线时,方向传感器/测斜仪奇怪的、未记录的传感器读数跳跃

c# - 循环 2 个数组 (Unity3d)

unity-game-engine - 更新是串行的还是并行的?

unity-game-engine - Unity - 如何在 Rigidbody2D 上平滑恒定速度

unity3d - 与谷歌纸板统一 : Remove center divider with gear?