スプライト (映像技術)
スプライト(英: sprite)は、主にビデオゲームで用いる、画面上の小さなキャラクタを高速に合成表示するための技術的な仕組みである。spriteは「妖精」の意味を持つ英語が由来となっている。
ファミリーコンピュータ・MSX・X68000などで使われていた方式である。
モニターに出力する映像信号を生成する直前に、VRAMから読み出した、ビットマップあるいはキャラクタベースのグラフィック面のデータと、スプライトICより送られて来るスプライトのデータを、走査線1ライン分の容量のラインバッファ上で、合成処理する。
この方式のメリットは、グラフィックバスをほとんど消費せず、またキャラクタの合成処理に必要なワークRAMが少なくて済む、という点である。
しかし画面の走査と並行してスプライトを合成するために、そのスプライト用のバッファには高速なメモリを必要とし、横方向へ多数表示した場合、合成処理が追いつかず、間に合わなかったものは表示されないという状況になる。この際、通常は内部のインデックスが遅い(優先順位が低い)スプライトから表示が欠けていき、スプライトの数が増えれば増えるほど、1ライン内での合成処理のタイミングがシビアになる。この仕様を逆手に取り、合成処理の一部として使用しているソフトウェアも存在する。
これらの制限に対しては、特に最大表示個数に制約が多い家庭用ゲーム機など、多くのソフトウェア上では、表示するスプライトを選別してちらつかせながら表示することで、スプライト欠けを緩和していた。また、水平帰線期間内に制御可能なハードウェアでは、走査線判定、割り込みなどを使用して、実表示が終わったエリアのスプライトの位置情報をまだ走査されていない領域で利用することにより、仕様上の最大表示数を越えた画面表示を行なう「スプライトダブラー」などの処理も開発された(ラスタースクロールも参照)。