Prechádzať zdrojové kódy

Merge pull request #4185 from RaananW/3.2.0-rc.2

npm update, 3.2.0-rc.2
Raanan Weber 7 rokov pred
rodič
commit
3e18fd9631

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 8309 - 8281
dist/preview release/babylon.d.ts


Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 14 - 14
dist/preview release/babylon.js


+ 54 - 16
dist/preview release/babylon.max.js

@@ -12028,7 +12028,7 @@ var BABYLON;
              * Returns the current version of the framework
              */
             get: function () {
-                return "3.2.0-rc.1";
+                return "3.2.0-rc.2";
             },
             enumerable: true,
             configurable: true
@@ -73637,12 +73637,13 @@ var BABYLON;
             _this.base = 0.1;
             _this._firstUpdate = true;
             _this._scene = scene;
+            _this._ratio = ratio;
             if (!_this.isSupported) {
                 BABYLON.Tools.Error("SSAO 2 needs WebGL 2 support.");
                 return _this;
             }
-            var ssaoRatio = ratio.ssaoRatio || ratio;
-            var blurRatio = ratio.blurRatio || ratio;
+            var ssaoRatio = _this._ratio.ssaoRatio || ratio;
+            var blurRatio = _this._ratio.blurRatio || ratio;
             // Set up assets
             var geometryBufferRenderer = scene.enableGeometryBufferRenderer();
             _this._createRandomTexture();
@@ -73851,6 +73852,25 @@ var BABYLON;
             }
             this._randomTexture.update(false);
         };
+        /**
+         * Serialize the rendering pipeline (Used when exporting)
+         * @returns the serialized object
+         */
+        SSAO2RenderingPipeline.prototype.serialize = function () {
+            var serializationObject = BABYLON.SerializationHelper.Serialize(this);
+            serializationObject.customType = "SSAO2RenderingPipeline";
+            return serializationObject;
+        };
+        /**
+         * Parse the serialized pipeline
+         * @param source Source pipeline.
+         * @param scene The scene to load the pipeline to.
+         * @param rootUrl The URL of the serialized pipeline.
+         * @returns An instantiated pipeline from the serialized object.
+         */
+        SSAO2RenderingPipeline.Parse = function (source, scene, rootUrl) {
+            return BABYLON.SerializationHelper.Parse(function () { return new SSAO2RenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+        };
         __decorate([
             BABYLON.serialize()
         ], SSAO2RenderingPipeline.prototype, "totalStrength", void 0);
@@ -73864,6 +73884,9 @@ var BABYLON;
             BABYLON.serialize("samples")
         ], SSAO2RenderingPipeline.prototype, "_samples", void 0);
         __decorate([
+            BABYLON.serialize()
+        ], SSAO2RenderingPipeline.prototype, "_ratio", void 0);
+        __decorate([
             BABYLON.serialize("expensiveBlur")
         ], SSAO2RenderingPipeline.prototype, "_expensiveBlur", void 0);
         __decorate([
@@ -74333,13 +74356,6 @@ var BABYLON;
             }
             this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRPassPostProcess", function () { return _this.originalPostProcess; }, true));
             this._currentDepthOfFieldSource = this.originalPostProcess;
-            if (this._vlsEnabled) {
-                // Create volumetric light
-                this._createVolumetricLightPostProcess(scene, ratio);
-                // Create volumetric light final post-process
-                this.volumetricLightFinalPostProcess = new BABYLON.PostProcess("HDRVLSFinal", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
-                this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSFinal", function () { return _this.volumetricLightFinalPostProcess; }, true));
-            }
             if (this._bloomEnabled) {
                 // Create down sample X4 post-process
                 this._createDownSampleX4PostProcess(scene, ratio / 2);
@@ -74353,6 +74369,13 @@ var BABYLON;
                 this.textureAdderFinalPostProcess = new BABYLON.PostProcess("HDRDepthOfFieldSource", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
                 this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRBaseDepthOfFieldSource", function () { return _this.textureAdderFinalPostProcess; }, true));
             }
+            if (this._vlsEnabled) {
+                // Create volumetric light
+                this._createVolumetricLightPostProcess(scene, ratio);
+                // Create volumetric light final post-process
+                this.volumetricLightFinalPostProcess = new BABYLON.PostProcess("HDRVLSFinal", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
+                this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSFinal", function () { return _this.volumetricLightFinalPostProcess; }, true));
+            }
             if (this._lensFlareEnabled) {
                 // Create lens flare post-process
                 this._createLensFlarePostProcess(scene, ratio);
@@ -74489,7 +74512,7 @@ var BABYLON;
             // Merge
             this.volumetricLightMergePostProces = new BABYLON.PostProcess("HDRVLSMerge", "standard", [], ["originalSampler"], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define VLSMERGE");
             this.volumetricLightMergePostProces.onApply = function (effect) {
-                effect.setTextureFromPostProcess("originalSampler", _this.originalPostProcess);
+                effect.setTextureFromPostProcess("originalSampler", _this._bloomEnabled ? _this.textureAdderFinalPostProcess : _this.originalPostProcess);
                 _this._currentDepthOfFieldSource = _this.volumetricLightFinalPostProcess;
             };
             this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSMerge", function () { return _this.volumetricLightMergePostProces; }, true));
@@ -74765,24 +74788,39 @@ var BABYLON;
             this.blurHPostProcesses = [];
             this.blurVPostProcesses = [];
         };
-        // Dispose
+        /**
+         * Dispose of the pipeline and stop all post processes
+         */
         StandardRenderingPipeline.prototype.dispose = function () {
             this._disposePostProcesses();
             this._scene.postProcessRenderPipelineManager.detachCamerasFromRenderPipeline(this._name, this._cameras);
             _super.prototype.dispose.call(this);
         };
-        // Serialize rendering pipeline
+        /**
+         * Serialize the rendering pipeline (Used when exporting)
+         * @returns the serialized object
+         */
         StandardRenderingPipeline.prototype.serialize = function () {
             var serializationObject = BABYLON.SerializationHelper.Serialize(this);
+            if (this.sourceLight) {
+                serializationObject.sourceLightId = this.sourceLight.id;
+            }
             serializationObject.customType = "StandardRenderingPipeline";
             return serializationObject;
         };
         /**
-         * Static members
+         * Parse the serialized pipeline
+         * @param source Source pipeline.
+         * @param scene The scene to load the pipeline to.
+         * @param rootUrl The URL of the serialized pipeline.
+         * @returns An instantiated pipeline from the serialized object.
          */
-        // Parse serialized pipeline
         StandardRenderingPipeline.Parse = function (source, scene, rootUrl) {
-            return BABYLON.SerializationHelper.Parse(function () { return new StandardRenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+            var p = BABYLON.SerializationHelper.Parse(function () { return new StandardRenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+            if (source.sourceLightId) {
+                p.sourceLight = scene.getLightByID(source.sourceLightId);
+            }
+            return p;
         };
         // Luminance steps
         StandardRenderingPipeline.LuminanceSteps = 6;

+ 54 - 16
dist/preview release/babylon.no-module.max.js

@@ -11995,7 +11995,7 @@ var BABYLON;
              * Returns the current version of the framework
              */
             get: function () {
-                return "3.2.0-rc.1";
+                return "3.2.0-rc.2";
             },
             enumerable: true,
             configurable: true
@@ -73604,12 +73604,13 @@ var BABYLON;
             _this.base = 0.1;
             _this._firstUpdate = true;
             _this._scene = scene;
+            _this._ratio = ratio;
             if (!_this.isSupported) {
                 BABYLON.Tools.Error("SSAO 2 needs WebGL 2 support.");
                 return _this;
             }
-            var ssaoRatio = ratio.ssaoRatio || ratio;
-            var blurRatio = ratio.blurRatio || ratio;
+            var ssaoRatio = _this._ratio.ssaoRatio || ratio;
+            var blurRatio = _this._ratio.blurRatio || ratio;
             // Set up assets
             var geometryBufferRenderer = scene.enableGeometryBufferRenderer();
             _this._createRandomTexture();
@@ -73818,6 +73819,25 @@ var BABYLON;
             }
             this._randomTexture.update(false);
         };
+        /**
+         * Serialize the rendering pipeline (Used when exporting)
+         * @returns the serialized object
+         */
+        SSAO2RenderingPipeline.prototype.serialize = function () {
+            var serializationObject = BABYLON.SerializationHelper.Serialize(this);
+            serializationObject.customType = "SSAO2RenderingPipeline";
+            return serializationObject;
+        };
+        /**
+         * Parse the serialized pipeline
+         * @param source Source pipeline.
+         * @param scene The scene to load the pipeline to.
+         * @param rootUrl The URL of the serialized pipeline.
+         * @returns An instantiated pipeline from the serialized object.
+         */
+        SSAO2RenderingPipeline.Parse = function (source, scene, rootUrl) {
+            return BABYLON.SerializationHelper.Parse(function () { return new SSAO2RenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+        };
         __decorate([
             BABYLON.serialize()
         ], SSAO2RenderingPipeline.prototype, "totalStrength", void 0);
@@ -73831,6 +73851,9 @@ var BABYLON;
             BABYLON.serialize("samples")
         ], SSAO2RenderingPipeline.prototype, "_samples", void 0);
         __decorate([
+            BABYLON.serialize()
+        ], SSAO2RenderingPipeline.prototype, "_ratio", void 0);
+        __decorate([
             BABYLON.serialize("expensiveBlur")
         ], SSAO2RenderingPipeline.prototype, "_expensiveBlur", void 0);
         __decorate([
@@ -74300,13 +74323,6 @@ var BABYLON;
             }
             this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRPassPostProcess", function () { return _this.originalPostProcess; }, true));
             this._currentDepthOfFieldSource = this.originalPostProcess;
-            if (this._vlsEnabled) {
-                // Create volumetric light
-                this._createVolumetricLightPostProcess(scene, ratio);
-                // Create volumetric light final post-process
-                this.volumetricLightFinalPostProcess = new BABYLON.PostProcess("HDRVLSFinal", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
-                this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSFinal", function () { return _this.volumetricLightFinalPostProcess; }, true));
-            }
             if (this._bloomEnabled) {
                 // Create down sample X4 post-process
                 this._createDownSampleX4PostProcess(scene, ratio / 2);
@@ -74320,6 +74336,13 @@ var BABYLON;
                 this.textureAdderFinalPostProcess = new BABYLON.PostProcess("HDRDepthOfFieldSource", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
                 this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRBaseDepthOfFieldSource", function () { return _this.textureAdderFinalPostProcess; }, true));
             }
+            if (this._vlsEnabled) {
+                // Create volumetric light
+                this._createVolumetricLightPostProcess(scene, ratio);
+                // Create volumetric light final post-process
+                this.volumetricLightFinalPostProcess = new BABYLON.PostProcess("HDRVLSFinal", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
+                this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSFinal", function () { return _this.volumetricLightFinalPostProcess; }, true));
+            }
             if (this._lensFlareEnabled) {
                 // Create lens flare post-process
                 this._createLensFlarePostProcess(scene, ratio);
@@ -74456,7 +74479,7 @@ var BABYLON;
             // Merge
             this.volumetricLightMergePostProces = new BABYLON.PostProcess("HDRVLSMerge", "standard", [], ["originalSampler"], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define VLSMERGE");
             this.volumetricLightMergePostProces.onApply = function (effect) {
-                effect.setTextureFromPostProcess("originalSampler", _this.originalPostProcess);
+                effect.setTextureFromPostProcess("originalSampler", _this._bloomEnabled ? _this.textureAdderFinalPostProcess : _this.originalPostProcess);
                 _this._currentDepthOfFieldSource = _this.volumetricLightFinalPostProcess;
             };
             this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSMerge", function () { return _this.volumetricLightMergePostProces; }, true));
@@ -74732,24 +74755,39 @@ var BABYLON;
             this.blurHPostProcesses = [];
             this.blurVPostProcesses = [];
         };
-        // Dispose
+        /**
+         * Dispose of the pipeline and stop all post processes
+         */
         StandardRenderingPipeline.prototype.dispose = function () {
             this._disposePostProcesses();
             this._scene.postProcessRenderPipelineManager.detachCamerasFromRenderPipeline(this._name, this._cameras);
             _super.prototype.dispose.call(this);
         };
-        // Serialize rendering pipeline
+        /**
+         * Serialize the rendering pipeline (Used when exporting)
+         * @returns the serialized object
+         */
         StandardRenderingPipeline.prototype.serialize = function () {
             var serializationObject = BABYLON.SerializationHelper.Serialize(this);
+            if (this.sourceLight) {
+                serializationObject.sourceLightId = this.sourceLight.id;
+            }
             serializationObject.customType = "StandardRenderingPipeline";
             return serializationObject;
         };
         /**
-         * Static members
+         * Parse the serialized pipeline
+         * @param source Source pipeline.
+         * @param scene The scene to load the pipeline to.
+         * @param rootUrl The URL of the serialized pipeline.
+         * @returns An instantiated pipeline from the serialized object.
          */
-        // Parse serialized pipeline
         StandardRenderingPipeline.Parse = function (source, scene, rootUrl) {
-            return BABYLON.SerializationHelper.Parse(function () { return new StandardRenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+            var p = BABYLON.SerializationHelper.Parse(function () { return new StandardRenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+            if (source.sourceLightId) {
+                p.sourceLight = scene.getLightByID(source.sourceLightId);
+            }
+            return p;
         };
         // Luminance steps
         StandardRenderingPipeline.LuminanceSteps = 6;

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 14 - 14
dist/preview release/babylon.worker.js


+ 54 - 16
dist/preview release/es6.js

@@ -11995,7 +11995,7 @@ var BABYLON;
              * Returns the current version of the framework
              */
             get: function () {
-                return "3.2.0-rc.1";
+                return "3.2.0-rc.2";
             },
             enumerable: true,
             configurable: true
@@ -73604,12 +73604,13 @@ var BABYLON;
             _this.base = 0.1;
             _this._firstUpdate = true;
             _this._scene = scene;
+            _this._ratio = ratio;
             if (!_this.isSupported) {
                 BABYLON.Tools.Error("SSAO 2 needs WebGL 2 support.");
                 return _this;
             }
-            var ssaoRatio = ratio.ssaoRatio || ratio;
-            var blurRatio = ratio.blurRatio || ratio;
+            var ssaoRatio = _this._ratio.ssaoRatio || ratio;
+            var blurRatio = _this._ratio.blurRatio || ratio;
             // Set up assets
             var geometryBufferRenderer = scene.enableGeometryBufferRenderer();
             _this._createRandomTexture();
@@ -73818,6 +73819,25 @@ var BABYLON;
             }
             this._randomTexture.update(false);
         };
+        /**
+         * Serialize the rendering pipeline (Used when exporting)
+         * @returns the serialized object
+         */
+        SSAO2RenderingPipeline.prototype.serialize = function () {
+            var serializationObject = BABYLON.SerializationHelper.Serialize(this);
+            serializationObject.customType = "SSAO2RenderingPipeline";
+            return serializationObject;
+        };
+        /**
+         * Parse the serialized pipeline
+         * @param source Source pipeline.
+         * @param scene The scene to load the pipeline to.
+         * @param rootUrl The URL of the serialized pipeline.
+         * @returns An instantiated pipeline from the serialized object.
+         */
+        SSAO2RenderingPipeline.Parse = function (source, scene, rootUrl) {
+            return BABYLON.SerializationHelper.Parse(function () { return new SSAO2RenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+        };
         __decorate([
             BABYLON.serialize()
         ], SSAO2RenderingPipeline.prototype, "totalStrength", void 0);
@@ -73831,6 +73851,9 @@ var BABYLON;
             BABYLON.serialize("samples")
         ], SSAO2RenderingPipeline.prototype, "_samples", void 0);
         __decorate([
+            BABYLON.serialize()
+        ], SSAO2RenderingPipeline.prototype, "_ratio", void 0);
+        __decorate([
             BABYLON.serialize("expensiveBlur")
         ], SSAO2RenderingPipeline.prototype, "_expensiveBlur", void 0);
         __decorate([
@@ -74300,13 +74323,6 @@ var BABYLON;
             }
             this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRPassPostProcess", function () { return _this.originalPostProcess; }, true));
             this._currentDepthOfFieldSource = this.originalPostProcess;
-            if (this._vlsEnabled) {
-                // Create volumetric light
-                this._createVolumetricLightPostProcess(scene, ratio);
-                // Create volumetric light final post-process
-                this.volumetricLightFinalPostProcess = new BABYLON.PostProcess("HDRVLSFinal", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
-                this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSFinal", function () { return _this.volumetricLightFinalPostProcess; }, true));
-            }
             if (this._bloomEnabled) {
                 // Create down sample X4 post-process
                 this._createDownSampleX4PostProcess(scene, ratio / 2);
@@ -74320,6 +74336,13 @@ var BABYLON;
                 this.textureAdderFinalPostProcess = new BABYLON.PostProcess("HDRDepthOfFieldSource", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
                 this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRBaseDepthOfFieldSource", function () { return _this.textureAdderFinalPostProcess; }, true));
             }
+            if (this._vlsEnabled) {
+                // Create volumetric light
+                this._createVolumetricLightPostProcess(scene, ratio);
+                // Create volumetric light final post-process
+                this.volumetricLightFinalPostProcess = new BABYLON.PostProcess("HDRVLSFinal", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
+                this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSFinal", function () { return _this.volumetricLightFinalPostProcess; }, true));
+            }
             if (this._lensFlareEnabled) {
                 // Create lens flare post-process
                 this._createLensFlarePostProcess(scene, ratio);
@@ -74456,7 +74479,7 @@ var BABYLON;
             // Merge
             this.volumetricLightMergePostProces = new BABYLON.PostProcess("HDRVLSMerge", "standard", [], ["originalSampler"], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define VLSMERGE");
             this.volumetricLightMergePostProces.onApply = function (effect) {
-                effect.setTextureFromPostProcess("originalSampler", _this.originalPostProcess);
+                effect.setTextureFromPostProcess("originalSampler", _this._bloomEnabled ? _this.textureAdderFinalPostProcess : _this.originalPostProcess);
                 _this._currentDepthOfFieldSource = _this.volumetricLightFinalPostProcess;
             };
             this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSMerge", function () { return _this.volumetricLightMergePostProces; }, true));
@@ -74732,24 +74755,39 @@ var BABYLON;
             this.blurHPostProcesses = [];
             this.blurVPostProcesses = [];
         };
-        // Dispose
+        /**
+         * Dispose of the pipeline and stop all post processes
+         */
         StandardRenderingPipeline.prototype.dispose = function () {
             this._disposePostProcesses();
             this._scene.postProcessRenderPipelineManager.detachCamerasFromRenderPipeline(this._name, this._cameras);
             _super.prototype.dispose.call(this);
         };
-        // Serialize rendering pipeline
+        /**
+         * Serialize the rendering pipeline (Used when exporting)
+         * @returns the serialized object
+         */
         StandardRenderingPipeline.prototype.serialize = function () {
             var serializationObject = BABYLON.SerializationHelper.Serialize(this);
+            if (this.sourceLight) {
+                serializationObject.sourceLightId = this.sourceLight.id;
+            }
             serializationObject.customType = "StandardRenderingPipeline";
             return serializationObject;
         };
         /**
-         * Static members
+         * Parse the serialized pipeline
+         * @param source Source pipeline.
+         * @param scene The scene to load the pipeline to.
+         * @param rootUrl The URL of the serialized pipeline.
+         * @returns An instantiated pipeline from the serialized object.
          */
-        // Parse serialized pipeline
         StandardRenderingPipeline.Parse = function (source, scene, rootUrl) {
-            return BABYLON.SerializationHelper.Parse(function () { return new StandardRenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+            var p = BABYLON.SerializationHelper.Parse(function () { return new StandardRenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+            if (source.sourceLightId) {
+                p.sourceLight = scene.getLightByID(source.sourceLightId);
+            }
+            return p;
         };
         // Luminance steps
         StandardRenderingPipeline.LuminanceSteps = 6;

+ 1 - 1
dist/preview release/gltf2Interface/package.json

@@ -1,7 +1,7 @@
 {
     "name": "babylonjs-gltf2interface",
     "description": "A typescript declaration of babylon's gltf2 inteface.",
-    "version": "3.2.0-rc.1",
+    "version": "3.2.0-rc.2",
     "repository": {
         "type": "git",
         "url": "https://github.com/BabylonJS/Babylon.js.git"

+ 1 - 1
dist/preview release/gui/package.json

@@ -4,7 +4,7 @@
     },
     "name": "babylonjs-gui",
     "description": "The Babylon.js GUI library is an extension you can use to generate interactive user interface. It is build on top of the DynamicTexture.",
-    "version": "3.2.0-rc.1",
+    "version": "3.2.0-rc.2",
     "repository": {
         "type": "git",
         "url": "https://github.com/BabylonJS/Babylon.js.git"

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 3 - 3
dist/preview release/inspector/babylon.inspector.bundle.js


+ 1 - 1
dist/preview release/inspector/package.json

@@ -4,7 +4,7 @@
     },
     "name": "babylonjs-inspector",
     "description": "The Babylon.js inspector.",
-    "version": "3.2.0-rc.1",
+    "version": "3.2.0-rc.2",
     "repository": {
         "type": "git",
         "url": "https://github.com/BabylonJS/Babylon.js.git"

+ 2 - 2
dist/preview release/loaders/package.json

@@ -4,7 +4,7 @@
     },
     "name": "babylonjs-loaders",
     "description": "The Babylon.js file loaders library is an extension you can use to load different 3D file types into a Babylon scene.",
-    "version": "3.2.0-rc.1",
+    "version": "3.2.0-rc.2",
     "repository": {
         "type": "git",
         "url": "https://github.com/BabylonJS/Babylon.js.git"
@@ -27,7 +27,7 @@
     ],
     "license": "Apache-2.0",
     "dependencies": {
-        "babylonjs-gltf2interface": "3.2.0-rc.1"
+        "babylonjs-gltf2interface": "3.2.0-rc.2"
     },
     "peerDependencies": {
         "babylonjs": ">=3.2.0-alpha"

+ 1 - 1
dist/preview release/materialsLibrary/package.json

@@ -4,7 +4,7 @@
     },
     "name": "babylonjs-materials",
     "description": "The Babylon.js materials library is a collection of advanced materials to be used in a Babylon.js scene.",
-    "version": "3.2.0-rc.1",
+    "version": "3.2.0-rc.2",
     "repository": {
         "type": "git",
         "url": "https://github.com/BabylonJS/Babylon.js.git"

+ 1 - 1
dist/preview release/postProcessesLibrary/package.json

@@ -4,7 +4,7 @@
     },
     "name": "babylonjs-post-process",
     "description": "The Babylon.js materials library is a collection of advanced materials to be used in a Babylon.js scene.",
-    "version": "3.2.0-rc.1",
+    "version": "3.2.0-rc.2",
     "repository": {
         "type": "git",
         "url": "https://github.com/BabylonJS/Babylon.js.git"

+ 1 - 1
dist/preview release/proceduralTexturesLibrary/package.json

@@ -4,7 +4,7 @@
     },
     "name": "babylonjs-procedural-textures",
     "description": "The Babylon.js materials library is a collection of advanced materials to be used in a Babylon.js scene.",
-    "version": "3.2.0-rc.1",
+    "version": "3.2.0-rc.2",
     "repository": {
         "type": "git",
         "url": "https://github.com/BabylonJS/Babylon.js.git"

+ 2 - 2
dist/preview release/serializers/package.json

@@ -4,7 +4,7 @@
     },
     "name": "babylonjs-serializers",
     "description": "The Babylon.js serializers library is an extension you can use to serialize Babylon scenes.",
-    "version": "3.2.0-rc.1",
+    "version": "3.2.0-rc.2",
     "repository": {
         "type": "git",
         "url": "https://github.com/BabylonJS/Babylon.js.git"
@@ -27,7 +27,7 @@
     ],
     "license": "Apache-2.0",
     "dependencies": {
-        "babylonjs-gltf2interface": "3.2.0-rc.1"
+        "babylonjs-gltf2interface": "3.2.0-rc.2"
     },
     "peerDependencies": {
         "babylonjs": ">=3.2.0-alpha"

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 22 - 22
dist/preview release/viewer/babylon.viewer.js


+ 54 - 16
dist/preview release/viewer/babylon.viewer.max.js

@@ -12116,7 +12116,7 @@ var BABYLON;
              * Returns the current version of the framework
              */
             get: function () {
-                return "3.2.0-rc.1";
+                return "3.2.0-rc.2";
             },
             enumerable: true,
             configurable: true
@@ -73725,12 +73725,13 @@ var BABYLON;
             _this.base = 0.1;
             _this._firstUpdate = true;
             _this._scene = scene;
+            _this._ratio = ratio;
             if (!_this.isSupported) {
                 BABYLON.Tools.Error("SSAO 2 needs WebGL 2 support.");
                 return _this;
             }
-            var ssaoRatio = ratio.ssaoRatio || ratio;
-            var blurRatio = ratio.blurRatio || ratio;
+            var ssaoRatio = _this._ratio.ssaoRatio || ratio;
+            var blurRatio = _this._ratio.blurRatio || ratio;
             // Set up assets
             var geometryBufferRenderer = scene.enableGeometryBufferRenderer();
             _this._createRandomTexture();
@@ -73939,6 +73940,25 @@ var BABYLON;
             }
             this._randomTexture.update(false);
         };
+        /**
+         * Serialize the rendering pipeline (Used when exporting)
+         * @returns the serialized object
+         */
+        SSAO2RenderingPipeline.prototype.serialize = function () {
+            var serializationObject = BABYLON.SerializationHelper.Serialize(this);
+            serializationObject.customType = "SSAO2RenderingPipeline";
+            return serializationObject;
+        };
+        /**
+         * Parse the serialized pipeline
+         * @param source Source pipeline.
+         * @param scene The scene to load the pipeline to.
+         * @param rootUrl The URL of the serialized pipeline.
+         * @returns An instantiated pipeline from the serialized object.
+         */
+        SSAO2RenderingPipeline.Parse = function (source, scene, rootUrl) {
+            return BABYLON.SerializationHelper.Parse(function () { return new SSAO2RenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+        };
         __decorate([
             BABYLON.serialize()
         ], SSAO2RenderingPipeline.prototype, "totalStrength", void 0);
@@ -73952,6 +73972,9 @@ var BABYLON;
             BABYLON.serialize("samples")
         ], SSAO2RenderingPipeline.prototype, "_samples", void 0);
         __decorate([
+            BABYLON.serialize()
+        ], SSAO2RenderingPipeline.prototype, "_ratio", void 0);
+        __decorate([
             BABYLON.serialize("expensiveBlur")
         ], SSAO2RenderingPipeline.prototype, "_expensiveBlur", void 0);
         __decorate([
@@ -74421,13 +74444,6 @@ var BABYLON;
             }
             this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRPassPostProcess", function () { return _this.originalPostProcess; }, true));
             this._currentDepthOfFieldSource = this.originalPostProcess;
-            if (this._vlsEnabled) {
-                // Create volumetric light
-                this._createVolumetricLightPostProcess(scene, ratio);
-                // Create volumetric light final post-process
-                this.volumetricLightFinalPostProcess = new BABYLON.PostProcess("HDRVLSFinal", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
-                this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSFinal", function () { return _this.volumetricLightFinalPostProcess; }, true));
-            }
             if (this._bloomEnabled) {
                 // Create down sample X4 post-process
                 this._createDownSampleX4PostProcess(scene, ratio / 2);
@@ -74441,6 +74457,13 @@ var BABYLON;
                 this.textureAdderFinalPostProcess = new BABYLON.PostProcess("HDRDepthOfFieldSource", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
                 this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRBaseDepthOfFieldSource", function () { return _this.textureAdderFinalPostProcess; }, true));
             }
+            if (this._vlsEnabled) {
+                // Create volumetric light
+                this._createVolumetricLightPostProcess(scene, ratio);
+                // Create volumetric light final post-process
+                this.volumetricLightFinalPostProcess = new BABYLON.PostProcess("HDRVLSFinal", "standard", [], [], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define PASS_POST_PROCESS", BABYLON.Engine.TEXTURETYPE_UNSIGNED_INT);
+                this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSFinal", function () { return _this.volumetricLightFinalPostProcess; }, true));
+            }
             if (this._lensFlareEnabled) {
                 // Create lens flare post-process
                 this._createLensFlarePostProcess(scene, ratio);
@@ -74577,7 +74600,7 @@ var BABYLON;
             // Merge
             this.volumetricLightMergePostProces = new BABYLON.PostProcess("HDRVLSMerge", "standard", [], ["originalSampler"], ratio, null, BABYLON.Texture.BILINEAR_SAMPLINGMODE, scene.getEngine(), false, "#define VLSMERGE");
             this.volumetricLightMergePostProces.onApply = function (effect) {
-                effect.setTextureFromPostProcess("originalSampler", _this.originalPostProcess);
+                effect.setTextureFromPostProcess("originalSampler", _this._bloomEnabled ? _this.textureAdderFinalPostProcess : _this.originalPostProcess);
                 _this._currentDepthOfFieldSource = _this.volumetricLightFinalPostProcess;
             };
             this.addEffect(new BABYLON.PostProcessRenderEffect(scene.getEngine(), "HDRVLSMerge", function () { return _this.volumetricLightMergePostProces; }, true));
@@ -74853,24 +74876,39 @@ var BABYLON;
             this.blurHPostProcesses = [];
             this.blurVPostProcesses = [];
         };
-        // Dispose
+        /**
+         * Dispose of the pipeline and stop all post processes
+         */
         StandardRenderingPipeline.prototype.dispose = function () {
             this._disposePostProcesses();
             this._scene.postProcessRenderPipelineManager.detachCamerasFromRenderPipeline(this._name, this._cameras);
             _super.prototype.dispose.call(this);
         };
-        // Serialize rendering pipeline
+        /**
+         * Serialize the rendering pipeline (Used when exporting)
+         * @returns the serialized object
+         */
         StandardRenderingPipeline.prototype.serialize = function () {
             var serializationObject = BABYLON.SerializationHelper.Serialize(this);
+            if (this.sourceLight) {
+                serializationObject.sourceLightId = this.sourceLight.id;
+            }
             serializationObject.customType = "StandardRenderingPipeline";
             return serializationObject;
         };
         /**
-         * Static members
+         * Parse the serialized pipeline
+         * @param source Source pipeline.
+         * @param scene The scene to load the pipeline to.
+         * @param rootUrl The URL of the serialized pipeline.
+         * @returns An instantiated pipeline from the serialized object.
          */
-        // Parse serialized pipeline
         StandardRenderingPipeline.Parse = function (source, scene, rootUrl) {
-            return BABYLON.SerializationHelper.Parse(function () { return new StandardRenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+            var p = BABYLON.SerializationHelper.Parse(function () { return new StandardRenderingPipeline(source._name, scene, source._ratio); }, source, scene, rootUrl);
+            if (source.sourceLightId) {
+                p.sourceLight = scene.getLightByID(source.sourceLightId);
+            }
+            return p;
         };
         // Luminance steps
         StandardRenderingPipeline.LuminanceSteps = 6;

+ 1 - 1
dist/preview release/viewer/package.json

@@ -4,7 +4,7 @@
     },
     "name": "babylonjs-viewer",
     "description": "A simple-to-use viewer based on BabylonJS to display 3D elements natively",
-    "version": "3.2.0-rc.1",
+    "version": "3.2.0-rc.2",
     "repository": {
         "type": "git",
         "url": "https://github.com/BabylonJS/Babylon.js.git"

+ 1 - 1
package.json

@@ -9,7 +9,7 @@
     ],
     "name": "babylonjs",
     "description": "Babylon.js is a JavaScript 3D engine based on webgl.",
-    "version": "3.2.0-rc.1",
+    "version": "3.2.0-rc.2",
     "repository": {
         "type": "git",
         "url": "https://github.com/BabylonJS/Babylon.js.git"

+ 1 - 1
src/Engine/babylon.engine.ts

@@ -726,7 +726,7 @@
          * Returns the current version of the framework
          */
         public static get Version(): string {
-            return "3.2.0-rc.1";
+            return "3.2.0-rc.2";
         }
 
         // Updatable statics so stick with vars here