Ninjaライブラリ - テクスチャ関数

njSetTexture

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

書式

Sint32 njSetTexture( *texlist ) 
NJS_TEXLIST *texlist 

引数

*texlist   NJS_TEXLIST構造体のポインタ

戻り値

 1   成功
−1   失敗

解説

カレントテクスチャリストにtexlistを設定します。

用例

NJS_TEXNAME texname[2];
NJS_TEXNAME texname2[2];
NJS_TEXLIST texlist ={texname,2};
NJS_TEXLIST texlist ={texname2,2};
Sint8 *texbuf;
/* 合計3つ分のテクスチャを読み込む準備をする */
NJS_TEXMEMLIST texmemlist[3];
njInitTexture(texmemlist,3);
texbuf = syMalloc(0x20800);
njInitTextureBuffer(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);
/* テクスチャをロードする */
njLoadTexture(&texlist);
syFree(texbuf);
/* テクスチャをロードする */
njLoadTexture(&texlist2);
/* カレントテクスチャリストをtexlistにする */
/* njLoadTexture関数の前に行っても問題はない */
njSetTexture(&texlist);
/* カレントテクスチャをtexlistの0番のテクスチャにする file1.pvr*/
njSetTextureNum(0);
    :
略 テクスチャ描画 file1.pvrのテクスチャで描画される
    :
/* カレントテクスチャリストをtexlist2にする */
njSetTexture(&texlist2);
/* カレントテクスチャをtexlist2の1番のテクスチャにする file3.pvr*/
njSetTextureNum(1);
    :
略 テクスチャ描画 file3.pvrのテクスチャで描画される
    :

備考

これ以降、次にnjSetTexture関数までカレントテクスチャリストになります。 テクスチャ関連関数、njXXXXNum関数、njXXXXNumG関数などは、カレントテクスチャリストに対して操作します。 詳しくは、テクスチャドキュメントを参照してください。

参照

njSetTextureNum()
njSetTextureNumG()

njSetTexture
COPYRIGHT © SEGA ENTERPRISES, LTD., 1998,1999