NNS_G2dGetOamManExInstance

構文

#include <nnsys/g2d/g2d_OAMEx.h>
BOOL NNS_G2dGetOamManExInstance( 
                                NNSG2dOamManagerInstanceEx*    pOam, 
                                NNSG2dOamChunkList*             pOamOrderingTbl, 
                                u8                              lengthOfOrderingTbl,
                                u16                             numPooledOam,
                                NNSG2dOamChunk*                 pPooledOam,
                                u16                             lengthAffineBuffer,
                                NNSG2dAffineParamProxy*         pAffineBuffer );

  

引数

pOam [OUT] 拡張OAMマネージャ 実体
pOamOrderingTbl [IN] オーダリングテーブルの先頭アドレス
lengthOfOrderingTbl [IN] オーダリングテーブルの長さ(かならず1以上であること)
numPooledOam [IN] OBJChunkの個数(かならず1以上であること)
pPooledOam [IN] OBJChunk配列へのポインタ(かならず非NULLであり、OBJChunk分の長さがあること)
lengthAffineBuffer [IN] アフィンパラメータバッファ配列の長さ(使用しない場合はゼロを指定)
pAffineBuffer [IN] アフィンパラメータバッファ配列へのポインタ(使用しない場合はNULLを指定)

返り値

初期化に成功した場合TRUEを返します

説明

拡張OAMマネージャを初期化します。
オーダリングテーブルの長さがOBJ登録時に指定可能な深度の最大値となります。
オーダリングテーブルの長さが長いほど、描画時に発生するオーバーヘッドが増加する特性を持ちます。


numPooledOam がマネージャに登録可能なOBJの最大数となります。
必ず1以上の数を指定してください。
numPooledOamにはマネージャが実際に使用するOBJアトリビュートの個数より大きな数を指定することが可能です。
(その場合、マネージャは複数フレームにわけて、OBJを時分割表示します)
なお、マネージャが実際に使用するOBJアトリビュートの個数は、
NNSG2dOamExEntryFunctions によって設定されるOBJ登録関数の返り値によって決定されます。

lengthAffineBuffer がマネージャに登録可能なアフィンパラメータの最大数となります。
アフィン変換を使用しない場合はゼロに設定し、pAffineBuffer にNULLを設定してください。

本関数はNNS_G2dGetNewOamInstanceExから改名されました。以前の関数は互換性維持のために別名として残されます。

参照

NNS_G2dGetNewOamInstanceEx
NNS_G2dInitAffineManagerEx
NNS_G2dSetOamManExEntryFunctions
NNSG2dOamExEntryFunctions

履歴

2005/06/06 NNSG2dOamExEntryFunctionsへのリンクを追加

2005/06/06 説明の追加

2004/08/02 関数改名の実施

2004/06/22 初版