我正在尝试制作一个具有三个场景的游戏,每个场景具有不同的功能,但是它们都需要相同的three.js对象。
我的问题是:就渲染速度而言,是否最好使用三台摄像机,并在我从一个场景切换到另一个场景时重新定位块,或者使用三个都包含相同类型对象的场景,但它们是实际上是不同的对象,而不必移动它们?
如果您不明白这一点,请想象一下:我有一个场景,里面充满了形状像字母的Three.js对象,它们拼写了一个段落。我想要一个具有相同字母的新段落,但是为了提高渲染速度,将所有字母移来移去,或者翻转到已经加载了相同字母但以新段落的形状呈现的场景,是否更好? / p>
只要使用JavaScript,我完全愿意采用其他方法来完成此任务。
非常感谢您!
答案 0 :(得分:2)
我相信您所指的是错误的问题。具有50个对象的两个场景将在GPU上(相对)渲染相同的时间。您正在考虑的“渲染速度”包括场景处理以重新定位您的字母。因此,您面临的 real 问题是找到最少数量的操作,以便将字母从一个场景定位到另一个场景。
如果我们做一些假设:
然后最快可以使用的是拥有所有对象的单独副本。您不需要执行 any 重新定位,因此您将直接跳到渲染步骤。