3

我正在使用 ARKit 和 SceneKit 开发 3D 游戏。游戏以 60 fps 的速度流畅运行,但当我继续使用它一段时间后,设备变热并且帧速率降至 30 fps。能量影响非常高,我在 Instruments 中注意到了一些东西。我将展示统计数据以及我在 Instruments 中看到的内容。这是游戏运行流畅时的统计数据,但我不明白为什么我得到 1.16K 作为节点数。我实际上并没有使用这么多节点,但这只是一个简单的级别。 在此处输入图像描述

这是我在 Instruments 上得到的,我不知道它是什么意思。 在此处输入图像描述 如您所见,能源影响非常高 在此处输入图像描述

我怎样才能找出为什么 fps 变低并且设备随着使用而变热?

4

1 回答 1

3

使用 60 fps 的 ARKit 6 DoF 跟踪以及 60 fps 的 SceneKit 或 RealityKit 渲染(多边形几何体、PBR 着色器和阴影)对于处理器和图形单元来说是极其沉重的负担。它还会很快耗尽电池电量,并使手机产生大量热量。不过,对于 AR、VR 和 AI 应用程序来说,这是一个常见问题。

要降低能源影响,请遵循以下建议:

  • 保持模型的多边形总数不超过 10K
  • 每个场景使用不超过 50K 的多边形(使用低多边形模型)
  • 不要使用光线追踪阴影(使用预烘焙或假阴影)
  • 尽量不要使用许多 PBR 着色器,例如金属或反光材料
  • 尝试降低跟踪帧速率,如果需要,降低渲染帧速率
  • 考虑到物理消耗大量处理能力
  • 不要为您的 3D 模型使用高分辨率 JPEG 或 PNG 纹理
于 2019-07-13T07:05:40.240 回答