NNS_G2dInitMCAnimationInstance

構文

#include <nnsys/g2d/g2d_MultiCellAnimation.h>

void NNS_G2dInitMCAnimationInstance
( 
    NNSG2dMultiCellAnimation*          pMultiCellAnim,  
    void*                              pWork, 
    const NNSG2dCellAnimBankData*      pAnimBank,  
    const NNSG2dCellDataBank*          pCellDataBank,
    const NNSG2dMultiCellDataBank*     pMultiCellDataBank,
    NNSG2dMCType                       mcType
);
  

引数

pMultiCellAnim [OUT] マルチセルアニメーション
pWork [IN] マルチセル実体の使用するワーク領域
pAnimBank [IN] マルチセルを構成する セルアニメーションが定義されている アニメバンク
pCellDataBank [IN] セルデータバンク
pMultiCellDataBank [IN] マルチセルデータバンク
mcType [IN] マルチセル実体の種類(NNSG2dMCType型)

返り値

なし

説明

マルチセルアニメーションを初期化します。
pWorkは実体の内部でワーク領域として使用されるメモリ領域へのポインタです。 実体の初期化に必要な、ワーク領域サイズはNNS_G2dGetMCWorkAreaSize() 関数を使用して、取得します。
mcTypeはマルチセルアニメーション実体の種類を表す、列挙子 NNSG2dMCType です。 NNSG2dMCType の定義を以下に示します。

typedef enum 
{
    NNS_G2D_MCTYPE_DONOT_SHARE_CELLANIM,
    NNS_G2D_MCTYPE_SHARE_CELLANIM
    
}NNSG2dMCType;
mcType として、NNS_G2D_MCTYPE_DONOT_SHARE_CELLANIMを指定すると過去のバージョンと同一のデータ構造で実体が 初期化され、同じように処理されます。
プログラマがマルチセルの構成ノードにアクセスし、データ等を書き換えるなどの処理を行わない限り、 NNS_G2D_MCTYPE_SHARE_CELLANIMを指定して実体を初期化したほうが、メモリ消費量、処理効率の点から有利です。
mcTypeとして、NNS_G2D_MCTYPE_SHARE_CELLANIMが指定された場合、 マルチセル上の複数のノードで同一のアニメーションシーケンス再生を行うようなデータの入力があった場合に、 セルアニメーションの実体を複数ノード間で共有します。そのため、メモリ消費量や、アニメーション更新の処理負荷が減少します。

また、NNS_G2D_MCTYPE_SHARE_CELLANIMが指定された場合、マルチセルのランタイム実体はノードに相当する情報を保持しません。
そのため、ノード単位の位置の変更、アフィン変換、がサポートされません。 ただし、上記制限によって同一セルアニメーションを再生するノードでは必ず同一のアフィンパラメータを参照することが保障されるため、 特に2D グラフィックスエンジンを使用した描画の際に、NNS_G2D_MCTYPE_DONOT_SHARE_CELLANIM を指定した場合に比べて、よりハードウェア資源(=使用するアフィンパラメータ)を節約することが可能です。
本関数はNNS_G2dInitMCAnimation(), NNS_G2dInitMCInstance(), NNS_G2dSetMCDataToMCInstance() の代替関数として用意されました。 以前の関数は、互換性維持のため別名として残されています。

新規にご利用のかたは、こちらの関数をご利用ください。

参照

NNS_G2dGetMCWorkAreaSize

NNS_G2dInitMCAnimation
NNS_G2dInitMCInstance
NNS_G2dSetMCDataToMCInstance

履歴

2005/01/31 初版