Browse Source

Adding enableOfflineSupport on Engine

davrous 10 năm trước cách đây
mục cha
commit
615cc493c8

+ 15 - 4
src/Loading/babylon.sceneLoader.js

@@ -88,8 +88,13 @@ var BABYLON;
                     importMeshFromData(data);
                 }, progressCallBack, database);
             };
-            // Checking if a manifest file has been set for this scene and if offline mode has been requested
-            var database = new BABYLON.Database(rootUrl + sceneFilename, manifestChecked);
+            if (scene.getEngine().enableOfflineSupport) {
+                // Checking if a manifest file has been set for this scene and if offline mode has been requested
+                var database = new BABYLON.Database(rootUrl + sceneFilename, manifestChecked);
+            }
+            else {
+                manifestChecked(true);
+            }
         };
         /**
         * Load a scene
@@ -147,8 +152,13 @@ var BABYLON;
                 return;
             }
             if (rootUrl.indexOf("file:") === -1) {
-                // Checking if a manifest file has been set for this scene and if offline mode has been requested
-                database = new BABYLON.Database(rootUrl + sceneFilename, manifestChecked);
+                if (scene.getEngine().enableOfflineSupport) {
+                    // Checking if a manifest file has been set for this scene and if offline mode has been requested
+                    database = new BABYLON.Database(rootUrl + sceneFilename, manifestChecked);
+                }
+                else {
+                    manifestChecked(true);
+                }
             }
             else {
                 BABYLON.Tools.ReadFile(sceneFilename, loadSceneFromData, progressCallBack);
@@ -164,3 +174,4 @@ var BABYLON;
     BABYLON.SceneLoader = SceneLoader;
     ;
 })(BABYLON || (BABYLON = {}));
+//# sourceMappingURL=babylon.sceneLoader.js.map

+ 14 - 4
src/Loading/babylon.sceneLoader.ts

@@ -111,8 +111,13 @@
                 }, progressCallBack, database);
             };
 
-            // Checking if a manifest file has been set for this scene and if offline mode has been requested
-            var database = new Database(rootUrl + sceneFilename, manifestChecked);
+            if (scene.getEngine().enableOfflineSupport) {
+                // Checking if a manifest file has been set for this scene and if offline mode has been requested
+                var database = new Database(rootUrl + sceneFilename, manifestChecked);
+            }
+            else {
+                manifestChecked(true);
+            }
         }
 
         /**
@@ -184,8 +189,13 @@
             }
 
             if (rootUrl.indexOf("file:") === -1) {
-                // Checking if a manifest file has been set for this scene and if offline mode has been requested
-                database = new Database(rootUrl + sceneFilename, manifestChecked);
+                if (scene.getEngine().enableOfflineSupport) {
+                    // Checking if a manifest file has been set for this scene and if offline mode has been requested
+                    database = new Database(rootUrl + sceneFilename, manifestChecked);
+                }
+                else {
+                    manifestChecked(true);
+                }
             }
             // Loading file from disk via input file or drag'n'drop
             else {

+ 3 - 0
src/babylon.engine.js

@@ -359,6 +359,8 @@ var BABYLON;
             this.isPointerLock = false;
             this.cullBackFaces = true;
             this.renderEvenInBackground = true;
+            // To enable/disable IDB support and avoid XHR on .manifest
+            this.enableOfflineSupport = true;
             this.scenes = new Array();
             this._windowIsBackground = false;
             this._loadingDivBackgroundColor = "black";
@@ -2003,3 +2005,4 @@ var BABYLON;
     })();
     BABYLON.Engine = Engine;
 })(BABYLON || (BABYLON = {}));
+//# sourceMappingURL=babylon.engine.js.map

+ 2 - 0
src/babylon.engine.ts

@@ -495,6 +495,8 @@
         public isPointerLock = false;
         public cullBackFaces = true;
         public renderEvenInBackground = true;
+        // To enable/disable IDB support and avoid XHR on .manifest
+        public enableOfflineSupport = true;
         public scenes = new Array<Scene>();
 
         // Private Members