Bläddra i källkod

Fixed doNotSerialize for geometry

David Catuhe 8 år sedan
förälder
incheckning
1a66ce2553

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 3 - 3
dist/preview release/babylon.core.js


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 1589 - 1588
dist/preview release/babylon.d.ts


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 7 - 7
dist/preview release/babylon.js


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 196 - 1
dist/preview release/babylon.max.js


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 7 - 7
dist/preview release/babylon.noworker.js


+ 10 - 0
src/Mesh/babylon.geometry.ts

@@ -86,6 +86,16 @@
             return this.delayLoadState === Engine.DELAYLOADSTATE_LOADED || this.delayLoadState === Engine.DELAYLOADSTATE_NONE;
         }
 
+        public get doNotSerialize(): boolean {
+            for (var index = 0; index < this._meshes.length; index++) {
+                if (!this._meshes[index].doNotSerialize) {
+                    return false;
+                }
+            }
+
+            return true;
+        }
+
         public setAllVerticesData(vertexData: VertexData, updatable?: boolean): void {
             vertexData.applyToGeometry(this, updatable);
             this.notifyUpdate();

+ 5 - 0
src/Tools/babylon.sceneSerializer.ts

@@ -4,6 +4,11 @@
         if (serializedGeometries[geometry.id]) {
             return;
         }
+
+        if (geometry.doNotSerialize) {
+            return;
+        }
+
         if (geometry instanceof Geometry.Primitives.Box) {
             serializationGeometries.boxes.push(geometry.serialize());
         }