问题描述
我是新来的,我知道这个问题特定于我的用例,但我希望没问题。
我正在开发 VR 音乐可视化工具。 为此,我对 FFT 进行了预处理,并在隧道中实例化了 250 行和 32 个对象(总共 8.000 个),每个频率的每个幅度都由一行中一个对象的高度表示。 我只实例化 500 行,而不是整首歌曲所需的数量的原因是为了提高性能。
每行中的每个对象都有 8 个顶点,因此我已经在 64.000 个顶点处,并且由于我还想将其他对象添加到场景中,出于性能原因,我希望将此 nmber 保持为最大值.为了仍然显示歌曲时间点的幅度,我改变了最远行中物体的位置并相应地改变它们的幅度。
但在我的 Oculus Quest 上,它根本不起作用,而且非常滞后。这可能是因为您可以看到大量的 Draw Call。
这只是为了澄清我的问题来自哪里。
据我所知,我(没有)有以下几种选择:
现在我的问题是我不能让这些对象静态并使用静态批处理,对吗? 因为我经常变换它们的位置和顶点。
此外,他们不使用相同的网格,因此 GPU 实例化不起作用。
他们有超过 300 个顶点,因此动态批处理不在讨论范围内。
我可以在每次重新定位最后一行后使用“StaticBatchingUtility.Combine”或“Mesh.CombineMeshes”吗?
如果是这样,这是否会提高我的性能,因为我大约每 0.3 秒调用一次?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)