##### NinjaUtil Library - テクスチャ関数

# nuReLoadTextureNum

テクスチャ番号によるテクスチャのリロード

### 書式

> `Sint32 nuReLoadTextureNum( 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と設定することで、128×128のレベルのテクスチャレベルのみリロードすることができます。 ミップマップテクスチャのすべてのレベルをリロードする場合、lodに0を指定します。

> メモリからロードする場合、texaddrで指定したアドレスからlodのレベルにリロードします。

### 用例

>     カレントテクスチャリストの
>     テクスチャ番号0番に256×256のミップマップ
>     テクスチャ番号1番に128×128のミップマップ
>     テクスチャ番号2番に256×128の長方形テクスチャ
>     がロードされているものとする
>     Sint8* texbuf;
>     texbuf = syMalloc(0x2B000);
>     /* When reloading from file, texture buffer is needed */
>     nuInitTextureBuffer(texbuf,0x2B000);
>     njSetTexture(&texlist);
>     /*
>      Change texture #0 texture, mipmap level 128x128 to file1.pvr.
>      (Here, file1.pvr is 256x256 mipmap texture.)
>     */
>     nuReLoadTextureNum(0,"file1.pvr",NJD_TEXATTR_TYPE_FILE,128);
>     /*
>      Reloads all the textures of texture #1.
>      (Here, file2.pvr is 128x128 mipmap texture.)
>     */
>     nuReLoadTextureNum(1,"file2.pvr",NJD_TEXATTR_TYPE_FILE,0);
>     /*
>      Reloads all the textures of texture #2.
>      (Here file3.pvr is 256x128 rectangle texture.)
>     */
>     nuReLoadTextureNum(2,"file3.pvr",NJD_TEXATTR_TYPE_FILE,0);
>     syFree(texbuf);

### 備考

> メモリテクスチャの場合、lodで設定したテクスチャの先頭を指定します。

> Ninja2からnjReLoadTextureNum()関数を削除し、同様の機能をする njReLoadTextureLodNum()関数を新たに追加しました。

### 参照

> nuReLoadTextureNumG() | グローバルインデックス番号によるテクスチャのリロード
> njReLoadTextureLodNum() | テクスチャ番号によるテクスチャのリロード

nuReLoadTextureNum

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000