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

# njSetTextureNum

テクスチャ番号によるカレントテクスチャの設定

### 書式

> `Sint32 njSetTextureNum( n )
> Uint32 n
> `

### 引数

> n | テクスチャ番号

### 戻り値

> 1 | 成功
> −1 | 失敗

### 解説

> カレントテクスチャリストのテクスチャ番号nをカレントテクスチャとして設定します。

> これ以降、次にnjSetTextureNum()関数、njSetTextureNumG()関数を行うまでカレントテクスチャになります。

> ●カレントテクスチャのテクスチャ番号について

> テクスチャ設定時に作成した、NJS_TEXNAME構造体で、
> NJS_TEXNAME texname[5];
> NJS_TEXLIST texlist={texname,5};
> /* テクスチャ番号 0 */
> njSetTextureName(&texname[0],"file1.pvr",10, NJD_TEXATTR_TYPE_FILE | NJD_TEXATTR_GLOBALINDEX);
> /* テクスチャ番号 1*/
> njSetTextureName(&texname[1],"file2.pvr",11, NJD_TEXATTR_TYPE_FILE | NJD_TEXATTR_GLOBALINDEX);
> /* テクスチャ番号 2*/
> njSetTextureName(&texname[2],"file1.pvr",12, NJD_TEXATTR_TYPE_FILE | NJD_TEXATTR_GLOBALINDEX);
> /* テクスチャ番号 3*/
> njSetTextureName(&texname[3],"file2.pvr",13, NJD_TEXATTR_TYPE_FILE | NJD_TEXATTR_GLOBALINDEX);
> /* テクスチャ番号 4*/
> njSetTextureName(&texname[4],"file1.pvr",14, NJD_TEXATTR_TYPE_FILE | NJD_TEXATTR_GLOBALINDEX);

> と1つのNJS_TEXLIST構造体で設定したNJS_TEXNAME構造体のはじめから 0,1,2,3,,,とテクスチャ番号は付きます。

### 用例

>     NJS_TEXNAME texname[2];
>     NJS_TEXNAME texname2[2];
>     NJS_TEXLIST texlist ={texname,2};
>     NJS_TEXLIST texlist2 ={texname2,2};
>     /* Prepare to load a total of 4 textures */
>     NJS_TEXMANAGE texmng[4];
>     NJS_TEXSYSTEM texsys[4];
>     Sint8 *texbuf;

>     njInitTextureEx(texmng,4,texsys,4);
>     texbuf = syMalloc(0x20000);
>     nuInitTextureBuffer(texbuf,0x20000);
>     njSetTextureName(&texname[0],"file1.pvr",0,
>     	NJD_TEXATTR_TYPE_FILE|
>     	NJD_TEXATTR_GLOBALINDEX);
>     njSetTextureName(&texname[1],"file2.pvr",1,
>     	NJD_TEXATTR_TYPE_FILE|
>     	NJD_TEXATTR_GLOBALINDEX);
>     njSetTextureName(&texname2[0],"file3.pvr",2,
>     	NJD_TEXATTR_TYPE_FILE|
>     	NJD_TEXATTR_GLOBALINDEX);
>     njSetTextureName(&texname2[1],"file4.pvr",3,
>     	NJD_TEXATTR_TYPE_FILE|
>     	NJD_TEXATTR_GLOBALINDEX);
>     /* Load texture */
>     nuLoadTexture(&texlist);
>     /* Load texture */
>     nuLoadTexture(&texlist2);
>     syFree(texbuf);
>     /* Set current texture list as texlist */
>     njSetTexture(&texlist);
>     /* Set texture 0 from texlist as current texture file1.pvr */
>     njSetTextureNum(0);
>         :
>      lit. Drawing texture using texture of file1.pvr
>         :
>     /* Set texlist2 as current texture list */
>     njSetTexture(&texlist2);
>     /* Set texture 1 from texlist2 as current texture file4.pvr */
>     njSetTextureNum(1);
>         :
>      lit. Drawing texture using texture of file4.pvr
>         :

### 備考

> 指定するテクスチャがテクスチャメモリにあることが必要です。

### 参照

> njSetTexture() | カレントテクスチャリストの設定
> njSetTextureNumG() | グローバルインデックス番号によるカレントテクスチャの設定

njSetTextureNum

COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000