私は JavaScript キャンバス ゲームに取り組んでおり、ゲームのパフォーマンスを改善したいと考えています。パフォーマンスを向上させる方法についての記事をいくつか読んでいます.1つの手法は事前レンダリングです。
それぞれがテクスチャを持つすべてのオブジェクトを、独自の個別のキャンバス要素にレンダリングすることは理にかなっていますか? 私がレンダリングしているエンティティの例を次に示します。
fruitless.ctx.save();
fruitless.ctx.translate(this.body.GetPosition().x,this.body.GetPosition().y);
fruitless.ctx.rotate(this.body.GetAngle());
fruitless.ctx.scale(this.scale.x, this.scale.y);
fruitless.ctx.drawImage(this.texture, ... )
this.face.draw();
fruitless.ctx.restore();
したがって、基本的に、反復ごとに drawImage() 関数を実行しています...事前レンダリングは、この drawImage() を初期化で(1回だけ)実行する必要があることを示唆しています-そうですか?