# NNS_G2dLoadPaletteEx

## 構文

      #include <nnsys/g2d/g2d_Image.h>

      void NNS_G2dLoadPaletteEx(
                                          const NNSG2dPaletteData*            pSrcData,
                                          const NNSG2dPaletteCompressInfo*    pCmpInfo,
                                          u32                                 addr,
                                          NNS_G2D_VRAM_TYPE                   type,
                                          NNSG2dImagePaletteProxy*            pPltProxy);

## 引数

pSrcData | [IN] 入力パレットデータソース
pCmpInfo | [IN] パレット圧縮情報
addr | [IN] 読み込み先アドレス
type | [IN] VRAM利用の種類(3D 2D-Main 2D-Sub )
pPltProxy | [OUT] 読み込み結果を格納する画像パレットプロクシ

## 返り値

なし

## 説明

圧縮されたパレットデータをハードウエアにロードし、画像パレットプロクシにロード結果、画像フォーマットを設定します。
圧縮されたパレットデータでは未使用パレット番号（すべてのパレット色が RGB(0,0,0) ）のデータは破棄され、必要なパレット番号のデータのみが格納されています。 したがって、圧縮パレット機能は、256色パレットでは、効果がありませんのでご注意ください。
本関数を使用してロードすることによって、元通りのパレット番号位置にパレットデータがロードされます。
（圧縮されたパレットデータは-pcm オプションを指定してコンバートすることで出力します。）

        (コード例)
        NNSG2dPaletteData*          pPltData    = NULL;
        NNSG2dPaletteCompressInfo*  pPltCmpData = NULL;
        void*  pFile = NULL;

        if( MyLoadFileToMainMem_( "test_data.NCLR", &pFile ) )
        {
            //
            // 圧縮情報ブロックの初期化を試みる
            //
            const BOOL bCmpLoaded = NNS_G2dGetUnpackedPaletteCompressInfo( pFile, &pPltCmpData );

            if( NNS_G2dGetUnpackedPaletteData( pFile, &pPltData ) )
            {
                if( bCmpLoaded )
                {
                    //
                    // 本関数を利用する
                    //
                    NNS_G2dLoadPaletteEx( pPltData, pPltCmpData, myPlttAddr, myVramType, &myPltProxy_ );
                }else{
                    //
                    // 通常のパレットロード関数を利用する
                    //
                    NNS_G2dLoadPalette( pPltData, myPlttAddr, myVramType, &myPltProxy_ );
                }
            }
        }

## 参照

なし

## 履歴

2004/10/04 初版