読み込んだテクスチャを解放せよ!

読み込んだテクスチャを解放せよ!




テクスチャを読み込んだまま放置しておくとメモリ上にテクスチャが溢れかえって
メモリがパンクしてしまいます。
そうならないためにも要らなくなったテクスチャは削除しましょう。

削除はテクスチャタイプの単位で行います。
1キャラごとに削除とか面倒なのでまとめて削除します。

    //  削除
    public void Delete( TEXTURE_TYPE type )
    {
        for( Iterator< TextureInfo > it = m_LoadTexInfoVec.iterator(); it.hasNext(); )
        {
            TextureInfo info    = it.next();
            if( info.TypeEqual( type ))
            {
                info.GetTexture().Release();

                it.remove();
            }
        }
    }

ベクタを回してマッチするタイプをベクタから削除しています。
注意すべき点は、Texture#Releaseメソッドを呼び出すことです。
これを呼ばないとOpenGL上にはテクスチャが残ったままになってしまいます。



<前のページ