スプライトは、OAM (オブジェクト属性
メモリ) を操作することによって動かします。
OAMエントリ 属性 0,1
| 7..0 |
Y 座標 |
| 9..8 |
回転/スケール (00: ノーマル, 01: 回転/スケール, 10: 無効, 11: 2倍 回転/スケール) |
| 11..10 |
モード (00: ノーマル, 01: 透過, 10: オブジェクトウインドウ, 11: ビットマップ?) |
| 12 |
モザイク (1: 有効) |
| 13 |
色深度 (0: 16, 1: 256) |
| 15..14 |
形状 (00: 真四角, 01: 横長, 10: 縦長, 11: それ以外) |
| 24..16 |
X 座標 |
| 29..25 |
回転/スケール 行列インデックス |
| 28 |
水平反転 (0=ノーマル, 1=反転) |
| 29 |
垂直反転 (0=ノーマル, 1=反転) |
| 31..30 |
サイズ |
| 値 |
真四角 |
横長 |
縦長 |
| 0 |
8x8 |
16x8 |
8x16 |
| 1 |
16x16 |
32x8 |
8x32 |
| 2 |
32x32 |
32x16 |
16x32 |
| 3 |
64x64 |
64x32 |
32x64 |
真四角・横長・縦長の設定は 15..14 形状 で行います。
OAMエントリ 属性 2
| 9..0 |
タイルインデックス |
| 11..10 |
優先度(プライオリティ)0が最高 |
| 15..12 |
パレットインデックス |
属性 3 は、スプライトの回転/スケールパラメータです。
それぞれのコアは 128 個のスプライトを動かします。
768 バイトを操作します。
スプライト毎に散在している、256 バイトは回転/スケールです。
OAM の場所:
- 0x07000000 (2D Core A)
- 0x07000400 (2D Core B)
最終更新:2007年12月09日 22:20