# NNS_G3D_SBC_CALLDL

## 命令のフォーマット

オフセット（バイト単位） | 説明
--- | ---
0 | `NNS_G3D_SBC_CALLDL`
1-4 | 命令からディスプレイリストへの相対アドレス
5-8 | ディスプレイリストのサイズ（バイト単位）

## 説明

`NNS_G3D_SBC_CALLDL`命令は、命令で指定されたディスプレイリストをジオメトリエンジンに転送します。この命令は、デフォルトでは、sbc.cの`NNSi_G3dFuncSbc_CALLDL`関数をコールします。関数の内部では以下のような処理が行われています。

1. タイミングAのコールバックをチェックします。この位置のコールバックは、ディスプレイリストの送信をコールバック関数に代行させたい場合に使用することができます。なお、コールバック関数内で`NNS_G3dRS`構造体の`NNS_G3D_RSFLAG_SKIP`フラグをセットしておくと、次のコールバックまでの処理をスキップします。
2. ディスプレイリストを転送します。
3. タイミングCのコールバックをチェックします。この位置のコールバックは、この命令の終了後に何らかの動作をさせたい場合に利用します。

コールバック関数の呼び出しタイミング | 用途
--- | ---
`NNS_G3D_SBC_CALLBACK_TIMING_A` | ディスプレイリストの送信をコールバック関数に代行させたい場合。
`NNS_G3D_SBC_CALLBACK_TIMING_B` | このタイミングを使用することはできません。
`NNS_G3D_SBC_CALLBACK_TIMING_C` | この命令の終了後に何らかの処理を入れたい場合。

## 参照

## 履歴

2004/10/14 記述の追加
2004/08/02 初版