1

私は現在ゲームに取り組んでいますが、それは本当にシンプルで非常に小さいものです。しかし、いくつかのレベルをビューポートの実際のサイズよりも大きくしたいのです。たとえば、キャンバスのサイズは 740x440 ですが、実際には 2000x440 のようなレベルが必要です。

そこで、.translate() メソッドを使用して基本的な 2D カメラをシミュレートしようとしました。問題なく動作していますが、一度にすべてをレンダリングしているためか、パフォーマンスが非常に悪いです。

.translate() は進むべき道ですか? もしそうなら、カメラでしか見られていないものをレンダリングする良い方法は何ですか?

4

1 に答える 1

0

複数のキャンバスを重ね合わせた「レイヤー」について考える必要があります。このように、各アニメーションはレイヤーごとに独立しています。

ビューポート内を移動するが、ランドスケープから離れないキャラクターがいるとします。1 つのレイヤーにキャラクターを配置し、もう 1 つのレイヤーに風景を配置して、キャラクター レイヤーのみをアニメートすることができます。そうすれば、シーン全体ではなく、キャラクターだけが再描画されます。

于 2012-05-25T18:59:44.463 に答える