Dispose three objects after reading.
This commit is contained in:
parent
4d0e4a0bd6
commit
53b9218cc5
@ -24,12 +24,19 @@ OV.ThreeImporter = class extends OV.ImporterBase
|
||||
|
||||
ClearContent ()
|
||||
{
|
||||
|
||||
if (this.loadedScene !== undefined && this.loadedScene !== null) {
|
||||
this.loadedScene.traverse ((child) => {
|
||||
if (child.isMesh) {
|
||||
child.geometry.dispose ();
|
||||
}
|
||||
});
|
||||
this.loadedScene = null;
|
||||
}
|
||||
}
|
||||
|
||||
ResetContent ()
|
||||
{
|
||||
|
||||
this.loadedScene = null;
|
||||
}
|
||||
|
||||
ImportContent (fileContent, onFinish)
|
||||
@ -109,6 +116,7 @@ OV.ThreeImporter = class extends OV.ImporterBase
|
||||
|
||||
OnThreeObjectsLoaded (scene, onFinish)
|
||||
{
|
||||
this.loadedScene = scene;
|
||||
scene.traverse ((child) => {
|
||||
if (child.isMesh) {
|
||||
// TODO: merge same materials
|
||||
|
||||
@ -95,8 +95,8 @@ OV.ConvertThreeMaterialToMaterial = function (threeMaterial)
|
||||
OV.ConvertThreeGeometryToMesh = function (threeGeometry, materialIndex)
|
||||
{
|
||||
// TODO: check if buffergeometry
|
||||
// TODO: name
|
||||
let mesh = new OV.Mesh ();
|
||||
mesh.SetName (threeGeometry.name);
|
||||
let vertices = threeGeometry.attributes.position.array;
|
||||
for (let i = 0; i < vertices.length; i += 3) {
|
||||
let x = vertices[i];
|
||||
|
||||
Loading…
Reference in New Issue
Block a user