njReLoadTextureNum | English
    ▲|INDEX|▼
テクスチャのリロード

### 書　式

      #include <Ninja.h>
      Sint32 njReLoadTextureNum(n,texaddr,attr,lod);
      Uint32 n
      void *texaddr
      Uint32 attr
      Uint32 lod

### 引　数

n
  カレントテクスチャリストのテクスチャ番号
*texaddr
  ファイル名又テクスチャメモリのアドレス
attr
  テクスチャのアトリビュート
lod
  ミップマップのレベル

### 返　値

成功
  1
失敗
  -1

### エラー

  なし

### 機　能

- カレントテクスチャリストのテクスチャ番号nのテクスチャをロードし直します。
- リロードするテクスチャは前にロードしていたテクスチャと同じものとします。
- ファイルからテクスチャをロードするときはattrにNJD_TEXATTR_TYPE_FILE をメモリからテクスチャをロードするときはattrにNJD_TEXATTR_TYPE_MEMORYを指定します。

- また、ミップマップテクスチャの場合、lodを指定することで各ミップマップレベル のみ、リロードすることが出来ます。
  たとえば、lodに128と設定することで、 128x128のレベルのテクスチャレベルのみリロードすることが出来ます。
- ミップマップのテクスチャをすべてのレベルをリロードする場合、lodに0を指定してます。
- メモリからロードする場合、texaddrで指定したアドレスからlodのレベルにリロードします。

### 用　例

- カレントテクスチャリストのテクスチャ番号0番に256x256のミップマップ
- カレントテクスチャリストのテクスチャ番号1番に128x128のミップマップ
- カレントテクスチャリストのテクスチャ番号2番に256x128の長方形テクスチャ

  がロードされているものとする

      Sint8* texbuf;

      texbuf = syMalloc(0x2B000);
      /* ファイルからリロードする場合もテクスチャバッファが必要になる */
      njInitTextureBuffer(texbuf,0x2B000);

      /*
        テクスチャ番号0番のテクスチャのミップマップレベル128x128を
        file1.pvrに変更する。
        ※file1.pvrは256x256のミップマップテクスチャとする
      */
      njReLoadTextureNum(0,"file1.pvr",NJD_TEXATTR_TYPE_FILE,128);

      /*
        テクスチャ番号1番のテクスチャをすべてロードし直す。
        ※file2.pvrは128x128のミップマップテクスチャとする
      */
      njReLoadTextureNum(1,"file2.pvr",NJD_TEXATTR_TYPE_FILE,0);

      /*
        テクスチャ番号2番のテクスチャをすべてロードし直す。
        ※file3.pvrは256x128の長方形テクスチャとする
      */
      njReLoadTextureNum(2,"file3.pvr",NJD_TEXATTR_TYPE_FILE,0);
      syFree(texbuf);

### 備　考

  メモリテクスチャの場合、lodで設定したテクスチャの先頭を指定します。
  詳しくは、テクスチャドキュメントを参照してください。

### 関　連

  njLoadTextureNum()
  njLoadTextureNumG()
  njReLoadTextureNumG()

njReLoadTextureNum |
    ▲|INDEX|▼