特定のシーンで不要になった資産からメモリを解放する方法を知りたいです。現在、私たちのアセットテクスチャはシーン内でアセットをアンロードした後も記憶されています。A-Frameのメモリからテクスチャを解除するには?
<a-scene>
<a-box src="texture.jpg"></a-box>
</a-scene>
特定のシーンで不要になった資産からメモリを解放する方法を知りたいです。現在、私たちのアセットテクスチャはシーン内でアセットをアンロードした後も記憶されています。A-Frameのメモリからテクスチャを解除するには?
<a-scene>
<a-box src="texture.jpg"></a-box>
</a-scene>
EDIT:テクスチャを配置する最も簡単な方法は、エンティティの材料をつかむとmaterial.map.dispose()
を呼び出すことです。たとえば、this.el.getObject3D('mesh').material.map.dispose()
、A-Frameが自動的に処理するまで。
document.querySelector('a-scene').systems.material.textureCache
からテクスチャオブジェクトを取得し、テクスチャに.dispose()
を実行できます。
また、document.querySelector('a-entity').components.material.material.map.dispose()
でエンティティからテクスチャを取得できると思います。
これを自動的に行うための問題があります。https://github.com/aframevr/aframe/issues/2166