NinjaUtil Library - テクスチャ関数

nuLoadTexture

テクスチャのロード(完了復帰)

書式

Sint32 nuLoadTexture( texlist )
NJS_TEXLIST *texlist

引数

texlist   テクスチャリスト構造体のポインタ

戻り値

 成功
-1   失敗

解説

テクスチャアトリビュートの設定によって以下の動作をします。

ロード方式に関するアトリビュートは、以下のように定義されています。

 定義   意味 
 NJD_TEXATTR_TYPE_FILE または、設定なし   ファイルからテクスチャをロードします。この場合nuInitTextureBuffer()関数でテクスチャバッファを設定する必要があります。 
 NJD_TEXATTR_TYPE_MEMORY   メインメモリからテクスチャをロードします。この場合テクスチャバッファを設定する必要はありません。 
 NJD_TEXATTR_TYPE_SURFACE   テクスチャサーフェス領域のみを確保します。実際にテクスチャメモリへテクスチャをロードしません。レンダテクスチャやフレームバッファテクスチャを使用する場合に使用します。この場合テクスチャバッファを設定する必要はありません。 
 NJD_TEXATTR_TYPE_SYSAREA   テクスチャ管理領域(テクスチャマネージメント領域、テクスチャシステム領域)のみを取得します。ムービーテクスチャを使用する場合に使用します。この場合テクスチャバッファを設定する必要はありません。 


用例

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

njInitTextureEx(texmng,2,texsys,2);
texbuf = syMalloc(0x20000);
nuInitTextureBuffer(texbuf,0x20000);
/* Set the two textures */
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);
/* Load texture */
nuLoadTexture(&texlist);
syFree(texbuf);
/* Set texlist as the current texture list */
njSetTexture(&texlist);
/* Set current texture to texlist #0 */
njSetTextureNum(0);

備考

この関数を実行する前に必ず、njInitTextureEx()関数を実行しておく必要があります。 Ninja2からnjLoadTexture()関数は削除されました。

参照

nuInitTextureBuffer() テクスチャのワークメモリの指定
nuLoadTextureNum() テクスチャ番号によるテクスチャのロード(完了復帰)
nuLoadTextureReq() テクスチャのロード(即時復帰)

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