# 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 初版