Ninja Library - テクスチャ関数

njSetTexture

カレントテクスチャリストの設定

書式

Sint32 njSetTexture( texlist )
NJS_TEXLIST *texlist

引数

texlist   NJS_TEXLIST構造体のポインタ

戻り値

 1   成功
−1   失敗

解説

カレントテクスチャリストにtexlistを設定します。設定したテクスチャリストは njGetCurrentTexList関数で取得することができます。

用例

NJS_TEXNAME texname[2];
NJS_TEXNAME texname2[2];
NJS_TEXLIST texlist ={texname,2};
NJS_TEXLIST texlist ={texname2,2};
Sint8 *texbuf;
/* Prepare to read three textures */
NJS_TEXMANAGE texmng[3];
NJS_TEXSYSTEM texsys[3];

njInitTextureEx(texmng,3,texsys,3);
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],"file1.pvr",0,
	NJD_TEXATTR_TYPE_FILE|
	NJD_TEXATTR_GLOBALINDEX);
njSetTextureName(&texname2[1],"file3.pvr",1,
	NJD_TEXATTR_TYPE_FILE|
	NJD_TEXATTR_GLOBALINDEX);
/* Load texture */
nuLoadTexture(&texlist);
syFree(texbuf);
/* Load texture */
nuLoadTexture(&texlist2);
/* Set current texture list to texlist */
/* No problem if it's done prior to executing 
   nuLoadTexture() function */
njSetTexture(&texlist);
/* Set current texture as #0 texture in texlist  file1.pvr*/
njSetTextureNum(0);
    :
 lit. Drawing textures using file1.pvr
    :
/* Set texlist2 as the current texture list */
njSetTexture(&texlist2);
/* Set current texture to texlist2 #1 texture  file3.pvr */
njSetTextureNum(1);
    :
 lit. Drawing textures  using file3.pvr
    :

備考

これ以降、次にnjSetTexture関数までカレントテクスチャリストになります。 テクスチャ関連関数、njXXXXNum関数、njXXXXNumG関数などは、カレントテクスチャリストに対して操作します。

参照

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

njSetTexture
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998-2000