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

njInitTextureBuffer

テクスチャのワークメモリの指定

書式

void njInitTextureBuffer( *addr, size ) 
Sint8 *addr 
Uint32 size 

引数

*addr   ワークバッファの先頭ポインタ
size   ワークバッファのサイズ

戻り値

なし

解説

ファイルからテクスチャをロードするときのワークとして2048バイト以上2048バイト単位のバッファを指定します。 バッファが32バイトアラインメントの場合、DMAを使用します。 テクスチャのバッファを使用する関数は以下のとおりです。


njLoadTexture()
njLoadTextureNum()
njReLoadTextureNum()
njReLoadTextureNumG()

ここで指定したメモリは関数終了後解放してもかまいません。 大きなサイズを指定した方がGD-ROMからのロード回数が減るので速くなります。 詳しくは、テクスチャガイドを参照してください。


用例

NJS_TEXNAME texname[2];
NJS_TEXLIST texlist ={texname,2};
/* 2つ分のテクスチャを読み込む準備をする */
NJS_TEXMEMLIST texmemlist[2];
Sint8 *texbuf;
njInitTexture(texmemlist,2);
/* 4096バイトのバッファを指定する */
texbuf = syMalloc(4096);
njInitTextureBuffer(texbuf,4096);
/* 2枚のテクスチャを設定する */
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);
/* テクスチャをロードする */
njLoadTexture(&texlist);
/* ロードが終わったら解放してもかまわない */
syFree(texbuf);

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