13.スプライトの制約
スーパーマリオワールドでは、スプライトのサイズ、数にかなり厳しい制約があります。
スプライト用のRAMは12体分用意されていますが、
11番目、12番目は?ブロックから出てきたアイテムや、ストックから降ってきたアイテム専用ですので、
一般的なスプライトは最大で、同時に10個までしか存在できません。
これ以上のスプライトを出現させようと思っても消えてしまいます。
ヨッシーやPスイッチなどは、画面外でも消えませんので、さらに注意が必要です。
また、スプライトのサイズ(グラフィックに用いたタイル数)を巨大にすると、
スプライトやマリオのグラフィック欠けが発生します。
これらの制約は、スプライトメモリの設定で以下のように変わってきます。

【スプライトの制約】
優先モード 優先されるスプライト スプライト数制限 サイズ制限 備考
00 - 10個 5タイル  
01 5F 乗ると回転するオレンジ色のリフト
64 ライン用のロ−プ
6個 5タイル  
02 54 金網の反対側に回るドア 7個 4タイル  
03 5E オレンジ色のリフト 6個 5タイル  
04 60 踏んだ後の緑スイッチ 9F マグナムキラー 7個 5タイル  
05 28 アトミックテレサ 5個 2タイル 優先スプライトは巨大なグラフィックでも
複数置いても正常表示されるが、マリオがすぐ欠ける
06 88 マリオを運ぶ籠 8個 5タイル  
07 - 5個 5タイル 雷の炎による化けが少なくなる
08 - 7個 5タイル  
09 C5 ボステレサ 9個 1タイル  
0A 86 ハナチャン 9個 5タイル ハナチャン、および初めの3つまでは6タイルまで
0B 28 アトミックテレサ 4個 5タイル  
0C - 8個 5タイル ジュゲムによる化けが少なくなる
0D 90 緑の大きなガス球
9F マグナムキラー
6個 3タイル  
0E - 8個 6タイル マリオのグラフィックが欠けない
全スプライトが6タイルまで表示される
0F - 9個 5タイル ロウソクの炎による化けが少なくなる
全てのスプライトが5タイルまでに制限される
10 - 10個 - 初めの2つが6タイルまで
  次の2つが4タイルまでで、残りが1タイルまで
11 AE スプーク 6個 5タイル  
12 D0 連続出現右に進むリフトン 6個 5タイル  
条件によっては、スプライト数制限はさらに1減る事もあります。
総タイル数にも制限があります。
優先スプライト以外でタイル数制限を超えたスプライトは、
越えた分だけグラフィック欠けを起こします。
優先スプライトでも、優先モードによって、表示可能なサイズが異なります
優先モード0Fを除き、優先スプライトが存在しない場合、
スプライト1つのみに限って、タイル数制限より大きくてもきちんと表示されます。
巨大なグラフィックのカスタムスプライトを配置したい場合、
そのスプライト番号をいずれかの優先スプライトの番号に合わせ、 それに対応したスプライトメモリの設定を行えばいいわけです。
PCアドレス$129D3以降を書き換えれば、各優先モードに対する優先スプライト番号を変えることができます。