njReleaseTexture
テクスチャメモリの開放

書 式

#include <Ninja.h>
Sint32 njReleaseTexture(*texlist);
NJS_TEXLIST *texlist

引 数

NJS_TEXLIST *texlist
NJS_TEXLIST構造体のポインタ

返 値

成功
1
失敗
-1

機 能

テクスチャリストtexlistのテクスチャメモリを開放する。

用 例

NJS_TEXNAME texname[2];
NJS_TEXNAME texname2[2];

NJS_TEXLIST texlist ={texname,2};
NJS_TEXLIST texlist2 ={texname2,2};
Sint8 *texbuf;


/* 4つ分のテクスチャを読み込む準備をする */
NJS_TEXMEMLIST texmemlist[4];

njInitTexture(texmemlist,4);

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",2,NJD_TEXATTR_TYPE_FILE|
            NJD_TEXATTR_GLOBALINDEX);

/* テクスチャをロードする */
njLoadTexture(&texlist);
njLoadTexture(&texlist2);
syFree(texbuf);

/* texlistのテクスチャを開放する */
njReleaseTexture(&texlist);

/*
    texlistを開放しても texlist2にもfile1.pvrが
    あるのでfile1.pvrはテクスチャメモリ上からは
    開放されない
    ※texlistを使ってはfile1.pvrはロードし直さない限り
    読めない
*/

備 考

ロードした他のテクスチャリストで同じテクスチャが登録されているときはすべてのテクスチャリストで開放しない限り、 テクスチャメモリ上から開放されることはありません。

関 連

njReleaseTextureAll
njReleaseTextureNum
njReleaseTextureNumG

njReleaseTexture

Copyright SEGA ENTERPRISES, LTD., 1998