Javascript 渲染速度:更多对象还是更多场景?

Javascript 渲染速度:更多对象还是更多场景?,javascript,object,three.js,rendering,scene,Javascript,Object,Three.js,Rendering,Scene,我试图制作一个有三个场景的游戏,每个场景都有不同的功能,但它们都需要相同的three.js对象 我的问题是:就渲染速度而言,使用三个摄影机并在从一个场景切换到另一个场景时重新定位块更好吗?还是使用三个场景,它们都包含相同类型的对象,但实际上是不同的对象,并且不必移动 如果你不明白,想象一下:我有一个场景,里面有三个形状像字母的.js对象,它们拼写一个段落。我想要一个具有相同字母的新段落,但渲染速度最好是移动所有字母,还是翻转到已加载相同字母但形状为新段落的场景 我完全愿意使用其他方法来完成这项任

我试图制作一个有三个场景的游戏,每个场景都有不同的功能,但它们都需要相同的three.js对象

我的问题是:就渲染速度而言,使用三个摄影机并在从一个场景切换到另一个场景时重新定位块更好吗?还是使用三个场景,它们都包含相同类型的对象,但实际上是不同的对象,并且不必移动

如果你不明白,想象一下:我有一个场景,里面有三个形状像字母的.js对象,它们拼写一个段落。我想要一个具有相同字母的新段落,但渲染速度最好是移动所有字母,还是翻转到已加载相同字母但形状为新段落的场景

我完全愿意使用其他方法来完成这项任务,只要它们只使用JavaScript


多谢各位

我相信你提到的问题是错误的。两个场景(每个场景有50个对象)将在GPU上渲染(相对)相同的时间。您考虑的“渲染速度”包括重新定位字母的场景处理。因此,您面临的真正问题是找到最少数量的操作,以便将字母从一个场景定位到下一个场景

如果我们做一些假设:

  • 你不在乎记忆
  • 您不关心最初设置场景所需的时间
  • 您不打算在给定场景之外重新排列字母

那么,最快的方法就是将所有对象单独复制。您不需要执行任何重新定位,因此可以直接跳到渲染步骤

我相信你提到的问题是错误的。两个场景(每个场景有50个对象)将在GPU上渲染(相对)相同的时间。您考虑的“渲染速度”包括重新定位字母的场景处理。因此,您面临的真正问题是找到最少数量的操作,以便将字母从一个场景定位到下一个场景

如果我们做一些假设:

  • 你不在乎记忆
  • 您不关心最初设置场景所需的时间
  • 您不打算在给定场景之外重新排列字母

那么,最快的方法就是将所有对象单独复制。您不需要执行任何重新定位,因此可以直接跳到渲染步骤

谢谢!我将使用这个方法。这里我要补充的是把字母<代码>几何学<代码>作为您的共享资产而不是<代码> Mesh <代码>,因为对于每一个段落,您将在一个不同的<代码>网格> <代码> >引用同一个字母(<代码>几何< /代码>)。.认为在两个不同的场景中添加一个
Mesh
是个坏主意™ 将很快变得明显(这是最后一次添加胜利)。谢谢!我将使用这个方法。这里我要补充的是把字母<代码>几何学<代码>作为您的共享资产而不是<代码> Mesh <代码>,因为对于每一个段落,您将在一个不同的<代码>网格> <代码> >引用同一个字母(<代码>几何< /代码>)。.认为在两个不同的场景中添加一个
Mesh
是个坏主意™ 将很快变得明显(这是最后一次添加胜利)。