NNS_G2dDrawOneOam3DDirectUsingParamCacheFast

構文

#include <nnsys/g2d/g2d_OamSoftwareSpriteDraw.h>

    void    NNS_G2dDrawOneOam3DDirectUsingParamCacheFast
    ( 
        s16                             posX,
        s16                             posY,
        s16                             posZ,
        const GXOamAttr*                pOam
    );
                            

引数

posX [IN] X位置
posY [IN] Y位置
posZ [IN] Z位置
pOam [IN] OAMアトリビュート

返り値

なし。

説明

パラメータ(UVパラメータ)のキャッシュを使用してOAMをスプライト描画します。
実行前にキャッシュパラメータの設定を行ってください。
キャッシュパラメータの設定は NNS_G2dSetOamSoftEmuSpriteParamCache()関数で行います。

関数呼び出しの前後で、3D グラフィックスエンジンのカレント行列 は保存されません。

同一のテクスチャを参照するスプライトを大量に書く際に、UV値の計算、設定を一度きり行うことによって、 効率よく描画処理を行うことが可能となります。

本関数では、OAMのフリップフラグが無視される点にご注意ください。 (UVパラメータはNNS_G2dSetOamSoftEmuSpriteParamCache()関数実行時に 決定されてしまいます。)
フリップしたスプライトを描画する場合、 NNS_G2dSetOamSoftEmuSpriteParamCache()の引数としてフリップ設定した OAM(GXOamAttr)を渡し、キャッシュパラメータを更新する必要があります。

    NNS_G2dDrawOneOam3DDirectUsingParamCache()の描画
        処理 = UVパラメータ設定 x 1 + 描画 x N
    通常の描画
        処理 = ( UVパラメータ設定 + 描画 ) x N

参照

NNS_G2dSetOamSoftEmuSpriteParamCache

履歴

2004/11/10 初版