我应该每秒渲染所有帧吗?
Should I render all the frames every secound?
我正在使用 HTML5 canvas 编写 2D 游戏。所以渲染所有对象和帧不会花费很多时间。
我想问一下2D和3D游戏。
假设我在渲染所有对象时 objects.should 之一进行了更改或更多更改,而我只需要重绘该对象?渲染所有对象和帧是唯一的选择吗?如果游戏是 3D,渲染不会花费很多时间吗? 特别是在网速较慢的情况下
So [performance] depends only on the browser and computer of the user.
如果您制作的游戏是在多台计算机上同时玩的,那么连接速度很重要。否则,连接速度几乎无关紧要(除非它与最初下载游戏资源有关)。更好的 CPU/GPU,本地计算机上的内存将对您的应用程序性能产生最大影响。
关于性能
理论上,如果只重绘那些自上一帧以来发生变化的游戏项目,您将获得更好的性能。
在实践中,重新绘制一个游戏项目通常需要重新绘制多个其他游戏项目。您可能想要重绘移动的玩家,但这样做时您还必须重绘背景以及与玩家发生碰撞的任何其他游戏项目。
因此,通常最好清除整个 canvas 并在当前位置重新绘制所有游戏项目。因此,对您问题的不满意答案是,您应该测试您独特的游戏应用程序,以确定您是否可以有效地重绘刚刚更改的项目,或者完整重绘是否更快。
我正在使用 HTML5 canvas 编写 2D 游戏。所以渲染所有对象和帧不会花费很多时间。
我想问一下2D和3D游戏。
假设我在渲染所有对象时 objects.should 之一进行了更改或更多更改,而我只需要重绘该对象?渲染所有对象和帧是唯一的选择吗?如果游戏是 3D,渲染不会花费很多时间吗? 特别是在网速较慢的情况下
So [performance] depends only on the browser and computer of the user.
如果您制作的游戏是在多台计算机上同时玩的,那么连接速度很重要。否则,连接速度几乎无关紧要(除非它与最初下载游戏资源有关)。更好的 CPU/GPU,本地计算机上的内存将对您的应用程序性能产生最大影响。
关于性能
理论上,如果只重绘那些自上一帧以来发生变化的游戏项目,您将获得更好的性能。
在实践中,重新绘制一个游戏项目通常需要重新绘制多个其他游戏项目。您可能想要重绘移动的玩家,但这样做时您还必须重绘背景以及与玩家发生碰撞的任何其他游戏项目。
因此,通常最好清除整个 canvas 并在当前位置重新绘制所有游戏项目。因此,对您问题的不满意答案是,您应该测试您独特的游戏应用程序,以确定您是否可以有效地重绘刚刚更改的项目,或者完整重绘是否更快。