0

render() で libgdx を使用してメッシュ配列をレンダリングする必要があります。meshArr 配列の getMeshToRender() メソッドで新しいデータを取得するたびにハンドラーを使用したためです。

        onCreate()
        {
          handler.removeCallbacks(sendUpdatesToUI);  
          handler.postDelayed(sendUpdatesToUI, 1000); // 1 second
        }

        Runnable sendUpdatesToUI = new Runnable() 
     {
            public void run() 
            {
                //DisplayLoggingInfo();   
                getMeshToRender();
                handler.postDelayed(this, 1000); // 1 seconds
            }
        };          

   getMeshToRender()

 {

   .......
    meshArr = new Mesh[numMesh];
   .......
 }

Render() メソッドでは、最初にその meshArr をロードしますが、その後 OutOfMemoryError でクラッシュします。

どんな解決策もかなりのものになるでしょう。ありがとう

4

1 に答える 1

0

単純で唯一の本当の答えは、より少ないメモリを使用することです。

使用しているメッシュが多すぎてアイデア全体を再考する必要があるか、メッシュを置き換えて古いメッシュを適切に破棄していないかのいずれかです。

未使用のメッシュを解放する場合は、Mesh#dispose()

于 2012-04-22T16:10:58.787 に答える