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

njInitTextureBuffer

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

書式

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

引数

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

戻値

なし

解説

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

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

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


用例

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