レベルの隅にタイルを配置するこのテクニックの名前はありますか?


9

古いゲームの開発における非常に一般的なアプローチは、タイルセットをレベルの隅に置いて、それを参照として使用することです。例えば:

例のレベル

このレベルでは、開発者は一連のタイルを左上隅に配置します。

しかし、この手法には名前がありますか?それについてのマニュアルを書いていて、名前をつけたいと思います。

回答:


8

名前があるかどうかわかりませんが、これはあなたがメモリを節約するためにあなたがすることだと思われるものです。

まず、基本的なタイルは非常に解像度が低く、わずか数ピクセルです。しかし、レンダリングすると、2倍、3倍、4倍などに拡大され、画面上でより「ブロック状」になります。

次に、古いゲームには、画面表示専用のメモリブロックがあります。そのメモリには、画面に表示されているものがあります。古いプラットフォームではメモリが非常にタイトであることを覚えておいてください。そのため、開発者はできる限り節約したいと考えています。

したがって、タイルを別のメモリ空間に配置するのではなく、タイルを画面メモリの一部にするだけで、少し節約できます。もちろん、これのアーティファクトは、それらが画面に表示されることです。

メモリアクセスの観点から、コードは、アクセスされているメモリが画面メモリまたは変数ストレージに使用されているかどうかを気にしません。基本的に、古いゲームのメモリ管理は非常に単純で、使用可能なメモリブロックは1つだけでした。GPUがなかったため、プログラミングと画面表示でプロセッサとメモリを分けるというアイデアはありませんでした。

以前のゲームのプログラミングでメモリがどれほどタイトであるかを理解するために、AtariおよびVICコンピュータのプログラミングに関する1983年の記事からの引用を以下に示します。「Atariの超高解像度画面(および16色GTIAモード)は、ほぼ羊。" それはごくわずかのように見えますが、コンピューターにはおそらく48Kのメモリしかなかったので、その多くはゲーム以外のものによって占められていたことを覚えておいてください。


答えてくれてありがとう!この手法は古いコンソールでの開発では一般的でした。現在多くのメモリを持っているので、それが現在ゲーム開発で使用されているかどうか知っていますか?
Macabeus

3
@Macabeusの最新のゲームは、ビデオメモリを使用して同様のことを行います。はい、はるかに多くのメモリがあり、ゲームも大きくなります... PCでは。モバイル/ハンドヘルドプラットフォーム向けの最新のゲームがあります。また、必要なすべてのメモリを割り当てることで、ミッドプレイのパフォーマンスが低下しないようにします。テクスチャの切り替えにはコストがかかるため、テクスチャアトラスは依然として優れたアイデアです。多くのゲームは、モデルをビューの外に格納し、必要なときに移動します。実際、一部のパーティクルシステムはそのように機能します。
Theraot、

意味がありません。タイルデータがマップデータの前/横に格納されている場合、リテラルタイルセットとして表示されません。タイル内のピクセルの色に応じて、一見ランダムに見えるタイルの束のように見えます。たとえば、いくつかのマリオゲーム(スーパーマリオランド2とスーパーマリオブラザーズ3)でメモリ探索を行っているときにVRAMデータを見ることができ、ランダムなタイルの束のように見えます。また、当時の正気なプログラマーはマップをより最適化し、巨大な空の領域はありません。
バリント

あなたが言及したコンピューターとほとんどのコンソールは、プログラム可能なグラフィックスパイプラインを持っていなかったため、グラフィックスを定義した場所を気にしていました。コンピュータはさらに、適切なグラフィックスシステムを持っていなかった文字のように定義されなければならなかったものが(まれに、ピクセルを設定することができますが、本当に遅かった)
バリント

1984年にアタリ800を使用しましたが、プログラムしたのは久しぶりです...
Tim Holt

8

それはパレットです。一部のアーティストが色を使っているのと同じことです。彼らは簡単にアクセスできるように、いくつかのメインカラーのグループを描画するか、それらの間にグラデーションを描画します。ピッカーツールを使用して次の色を選択する方が、カラーピッカーホイールに移動して数分間いじって、残りの画像と一致するように祈るよりもはるかに簡単です。

ほとんどのタイルエディターは非常に高度なpixelartプログラムなので、タイルでも同じですが、色ではなくタイルを使用します。


あなたとティム・ホルトの両方の答えが正しいと言えるでしょう。パレットはタイルマップに格納されるため、パレットとして役立ち、メモリを節約できます。
Macabeus
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.