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

njReleaseCacheTextureNum

テクスチャ用キャッシュメモリの解放

書式

Sint32 njReleaseCacheTextureNum( n ) 
Uint32 n 

引数

 カレントテクスチャリストのテクスチャ番号

戻り値

 1   成功
−1   失敗

解説

テクスチャ番号nのキャッシュメモリを解放します。

用例

NJS_TEXNAME texname[2];
NJS_TEXLIST texlist ={texname,2};
/* 2つ分のテクスチャを読み込む準備をする */
NJS_TEXMEMLIST texmemlist[2];
Sint8 *texbuf;
Sint8 *cachebuf;
njInitTexture(texmemlist,2);
texbuf = syMalloc(0x20800);
njInitTextureBuffer(texbuf,0x20000);
/* キャッシュバッファを設定する 256x256x2バイトx2枚=0x40000*/
cachebuf = syMalloc(0x40000);
njInitCacheTextureBuffer(cachebuf,0x40000);
njSetTextureName(&texname[0],"file1.pvr",0,
	NJD_TEXATTR_TYPE_FILE|
	NJD_TEXATTR_CACHE|NJD_TEXATTR_GLOBALINDEX);
njSetTextureName(&texname[1],"file2.pvr",1,
	NJD_TEXATTR_TYPE_FILE|
	NJD_TEXATTR_CACHE|NJD_TEXATTR_GLOBALINDEX);
/* テクスチャをロードする キャッシュに読み込む */
njLoadTexture(&texlist);
/* カレントテクスチャリストをtexlistにする */
njSetTexture(&texlist);
/* キャッシュからテクスチャメモリへ読み込む*/
njLoadCacheTextureNum(0);
njLoadCacheTextureNum(1);
syFree(texbuf);
/* カレントテクスチャをtexlistの0番のテクスチャにする file1.pvr*/
njSetTextureNum(0);
    :
略 テクスチャ描画 file1.pvrのテクスチャで描画される
    :
/* キャッシュにあるテクスチャ番号0のテクスチャを解放 */
njReleaseCacheTextureNum(0);

備考

njSetTexture関数によりカレントテクスチャリストを指定している必要があります。 キャッシュメモリに指定のテクスチャがロードされていなくてはなりません。 キャッシュメモリを解放してもテクスチャメモリ内のテクスチャは解放されません。 詳しくは、テクスチャドキュメントを参照してください。

参照

njReleaseCacheTextureAll()
njReleaseCacheTextureNumG()

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