1

私はそれらのレベルを提示するためにタイリングエンジンを使用しているレベルベースのゲームを持っています。レベルの大部分は、地面や空のようにレベルを通して静止したままです。
タイルデータからレンダリングテクスチャに地面と空を事前にレンダリングし、フレームごとにプレハブの束を描画するのではなく、フレームごとに描画することを考えました。
レベル全体が常に表示されるので、描画されないものについての心配はありません。
私が見ることができるレンダリングテクスチャの唯一の欠点は、プレハブが小さく、あちこちにコピーされているのに、メモリ内のスペースが必要になることです(グラフィックの1つですが)。
何が良いですか?全体を事前に描画しますか、それともすべてのプレハブをフレームごとに描画しますか?

4

1 に答える 1

0

タイルマップの要点は、画像の特定の部分を複数回再利用できることです。これにより、メモリが節約され、ほとんどの場合、レンダリングが高速になります。マップ上でオブジェクトが移動する可能性が高いため、とにかくすべてのフレームで地面と空の画像をレンダリングする必要があります。そうしないと、どこにでも残像が表示されます。これをテストする最も簡単な方法は、両方の方法を試し、ツールを使用して、それぞれの方法が速度、メモリ、およびバッテリ寿命にどのように影響するかを確認することです。

私は両方の方法で遊んだことがありますが、タイルマップは、維持するのが少し難しいですが、ほとんどの場合、背景画像に対してより効率的であることがわかりました。

私の一般的な経験則では、背景にタイルを繰り返すことができるセクションがたくさんあり、タイルセットのサイズが画像全体のサイズの約50%以下である場合は、タイルマップを実装します。それ以外の場合は、画像を使用します。

ただし、空がすべて1色で、どこにも違いがない場合は、その色の1ピクセルの画像(または白いピクセル)を撮影して、その色を色にするのが最善の方法であることがわかりました。あなたの空の!)そしてそれを適切なサイズに拡大縮小します。これはメンテナンスが簡単で、速度、メモリ、バッテリー寿命も簡単ですが、細部を犠牲にする必要があります。

お役に立てば幸いです。

于 2011-08-27T17:18:47.583 に答える