解決済みの質問

ゲームで使われる映像技術。スプライトの原理を簡単に説明していただけないでしょうか。
kei920shさん
ゲームで使われる映像技術。スプライトの原理を簡単に説明していただけないでしょうか。
違反報告
ベストアンサーに選ばれた回答
atsutouchida1988さん
この機能は、画面表示における映像の情報を記憶しているビデオRAMとは別に、多数の小さな画像を用意しておき、画面上の任意の位置(1ピクセル単位で指定可能)にハードウェアで合成して表示する物である。
この機能は、背景となる画像や複数のスプライトで重ね合わせて合成表示ができるようになっており、複数のスプライトが重なったときに、どのスプライトを前面に表示するかをプログラム上において優先順位を指定する事が可能で、これを利用して細かい映像表現も可能である。
これはアニメーションにおけるセル画の概念に近いが、更にセル画に例えるなら、背景の上にキャラクタの大きさに切ったセル画を置いて、1コマ毎にキャラクタのセル画を背景上で動かしていくという物である。
例えばあるゲーム上において、主人公=プレーヤーがソリに乗るシーンを表現する場合、スプライトを使った映像表現では、座っている主人公が描かれたスプライトの下に、ソリのスプライトを重ねる。こうすると主人公がソリに乗っているように見える。 さらにソリが動き出した際に、ソリを細かく上下・または左右に小さく動かす事で、主人公の乗ったソリが、勢い良く疾走してガタガタと地面の凹凸によって振動する様子が表現できる。
また主人公がソリからボートに乗り換えた場合には、座っている主人公のスプライトの下に、ボートのスプライトを置くだけで済む。 そのため、キャラクタの画像データを「ソリに乗っている画像」と「ボートに乗っている画像」で別々に作る必要が無い。
wikipediaの抜粋です。
プログラム上の利点
プログラム上に於いては、キャラクタを移動させるときは各スプライトに指定された位置情報だけを変更すればよい。 優先順位の指定により、奥行きも簡単に表現できる。 これは前出の細かい映像表現に利用され、特に幾つかの部品を別々・または一緒に動かす事で、様々な表現に応用できる。 そのため、それらの部品を組み合わせた画像を一々作成しなくて済む。 製作に掛かる手間が省ける他、それらの合成画像を予めソフトウェアの記憶媒体に記憶させておく必要が無い。 少ない記憶容量の媒体で、より表現力豊かなゲームを提供できる事にも繋がる。
- この質問・回答は役に立ちましたか?
- はい
- いいえ
お役立ち度:
0人中 0人が役に立つと評価しています。
質問した人からのコメント