Browse Source

Add more options to material.forceCompilation

David Catuhe 8 năm trước cách đây
mục cha
commit
b3eb9b2519

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 2662 - 2660
dist/preview release/babylon.d.ts


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 27 - 27
dist/preview release/babylon.js


+ 7 - 3
dist/preview release/babylon.max.js

@@ -24177,20 +24177,24 @@ var BABYLON;
             return result;
         };
         // Force shader compilation including textures ready check
-        Material.prototype.forceCompilation = function (mesh, onCompiled) {
+        Material.prototype.forceCompilation = function (mesh, options, onCompiled) {
             var _this = this;
             var subMesh = new BABYLON.BaseSubMesh();
             var scene = this.getScene();
+            var engine = scene.getEngine();
             var beforeRenderCallback = function () {
                 if (subMesh._materialDefines) {
                     subMesh._materialDefines._renderId = -1;
                 }
+                var alphaTestState = engine.getAlphaTesting();
+                engine.setAlphaTesting(options.alphaTest);
                 if (_this.isReadyForSubMesh(mesh, subMesh)) {
                     scene.unregisterBeforeRender(beforeRenderCallback);
                     if (onCompiled) {
                         onCompiled(_this);
                     }
                 }
+                engine.setAlphaTesting(alphaTestState);
             };
             scene.registerBeforeRender(beforeRenderCallback);
         };
@@ -50864,7 +50868,7 @@ var BABYLON;
                 }
                 if (enabled) {
                     var geometry = this._scene.enableGeometryBufferRenderer();
-                    if (!geometry.isSupported) {
+                    if (!geometry) {
                         BABYLON.Tools.Warn("Geometry renderer is not supported, cannot create volumetric lights in Standard Rendering Pipeline");
                         return;
                     }
@@ -51263,7 +51267,7 @@ var BABYLON;
         };
         StandardRenderingPipeline.prototype._getDepthTexture = function () {
             var geometry = this._scene.enableGeometryBufferRenderer();
-            if (geometry.isSupported) {
+            if (geometry) {
                 return geometry.getGBuffer().textures[0];
             }
             return this._scene.enableDepthRenderer().getDepthMap();

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 2662 - 2660
dist/preview release/babylon.module.d.ts


Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 27 - 27
dist/preview release/babylon.worker.js


+ 8 - 2
src/Materials/babylon.material.ts

@@ -505,15 +505,19 @@
         }
 
         // Force shader compilation including textures ready check
-        public forceCompilation(mesh: AbstractMesh, onCompiled: (material: Material) => void): void {
+        public forceCompilation(mesh: AbstractMesh, options: { alphaTest: boolean }, onCompiled: (material: Material) => void): void {
             var subMesh = new BaseSubMesh();
             var scene = this.getScene();
+            var engine = scene.getEngine();
 
             var beforeRenderCallback = () => {
                 if (subMesh._materialDefines) {
                     subMesh._materialDefines._renderId = -1;
                 }
-
+                
+                var alphaTestState = engine.getAlphaTesting();
+                engine.setAlphaTesting(options.alphaTest);
+                
                 if (this.isReadyForSubMesh(mesh, subMesh)) {
                     scene.unregisterBeforeRender(beforeRenderCallback);
 
@@ -521,6 +525,8 @@
                         onCompiled(this);
                     }
                 }
+
+                engine.setAlphaTesting(alphaTestState);
             };
 
             scene.registerBeforeRender(beforeRenderCallback);