2017-05-12 11 views
1

私は360度の画像をa-skyプリミティブにロードしたWebアプリケーションを構築しています。私はaframe-reactを使用しています。合計20+ 360度の画像があり、にはimgの資産が1つしかありません。ユーザーがシーンを反応させると、アセットimgsrcが変更され、シーンがレンダリングされます。すべて正常に動作しますが、キャッシングのために多くのメモリを使用しています。 1回は4GB +メモリを使用しました。モバイルでは、〜8 +画像を切り替えるとWebページがクラッシュします。どのようにこの状況に対処しますか?A-Frameで使用するメモリを管理する方法は?

私はTHREE.Cacheを調べてみましたが、そこに画像がキャッシュされていませんでした。

このメモリ使用量は、Reactの使用と関係していますか?

+0

おそらくいくつかのコードが役に立ちますか?これらの日にはちょっと難しいクリスタルボール... – pailhead

答えて

1

A-Frameが自動的に管理するには問題がありますが、今はテクスチャをクリアするためにハックする必要があります。

AFRAME.scenes[0].systems.material.textureCache[url].then(function (texture) { 
    texture.dispose();  
}); 
+0

うわー、ありがとう。 'textureCache [url]'は私にとってはうまくいかなかった。 'Object.keys(textureCache)'を使ってテクスチャを繰り返し処理します。 – AKT

関連する問題