David Catuhe 7 년 전
부모
커밋
3bfe155145

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 12632 - 12631
dist/preview release/babylon.d.ts


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 9 - 9
dist/preview release/babylon.js


+ 5 - 2
dist/preview release/babylon.max.js

@@ -51862,7 +51862,7 @@ var BABYLON;
     /**
      * This represents a GPU particle system in Babylon
      * This is the fastest particle system in Babylon as it uses the GPU to update the individual particle data
-     * @see https://www.babylonjs-playground.com/#PU4WYI#2
+     * @see https://www.babylonjs-playground.com/#PU4WYI#4
      */
     var GPUParticleSystem = /** @class */ (function () {
         /**
@@ -52259,7 +52259,7 @@ var BABYLON;
             this._currentRenderId = this._scene.getRenderId();
             // Get everything ready to render
             this._initialize();
-            this._currentActiveCount = Math.min(this._activeCount, this._currentActiveCount + this.emitRate);
+            this._currentActiveCount = Math.min(this._activeCount, this._currentActiveCount + (this.emitRate * this._timeDelta) | 0);
             // Enable update effect
             this._engine.enableEffect(this._updateEffect);
             this._engine.setState(false);
@@ -87817,6 +87817,9 @@ var BABYLON;
         NullEngine.prototype.getLockstepMaxSteps = function () {
             return this._options.lockstepMaxSteps;
         };
+        NullEngine.prototype.getHardwareScalingLevel = function () {
+            return 1.0;
+        };
         NullEngine.prototype.createVertexBuffer = function (vertices) {
             return {
                 capacity: 0,

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 9 - 9
dist/preview release/babylon.worker.js


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 4762 - 4762
dist/preview release/customConfigurations/minimalGLTFViewer/babylon.d.ts


+ 5 - 2
dist/preview release/es6.js

@@ -51848,7 +51848,7 @@ var BABYLON;
     /**
      * This represents a GPU particle system in Babylon
      * This is the fastest particle system in Babylon as it uses the GPU to update the individual particle data
-     * @see https://www.babylonjs-playground.com/#PU4WYI#2
+     * @see https://www.babylonjs-playground.com/#PU4WYI#4
      */
     var GPUParticleSystem = /** @class */ (function () {
         /**
@@ -52245,7 +52245,7 @@ var BABYLON;
             this._currentRenderId = this._scene.getRenderId();
             // Get everything ready to render
             this._initialize();
-            this._currentActiveCount = Math.min(this._activeCount, this._currentActiveCount + this.emitRate);
+            this._currentActiveCount = Math.min(this._activeCount, this._currentActiveCount + (this.emitRate * this._timeDelta) | 0);
             // Enable update effect
             this._engine.enableEffect(this._updateEffect);
             this._engine.setState(false);
@@ -87803,6 +87803,9 @@ var BABYLON;
         NullEngine.prototype.getLockstepMaxSteps = function () {
             return this._options.lockstepMaxSteps;
         };
+        NullEngine.prototype.getHardwareScalingLevel = function () {
+            return 1.0;
+        };
         NullEngine.prototype.createVertexBuffer = function (vertices) {
             return {
                 capacity: 0,

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 7 - 7
dist/preview release/viewer/babylon.viewer.js


+ 19 - 4
dist/preview release/viewer/babylon.viewer.max.js

@@ -51935,7 +51935,7 @@ var BABYLON;
     /**
      * This represents a GPU particle system in Babylon
      * This is the fastest particle system in Babylon as it uses the GPU to update the individual particle data
-     * @see https://www.babylonjs-playground.com/#PU4WYI#2
+     * @see https://www.babylonjs-playground.com/#PU4WYI#4
      */
     var GPUParticleSystem = /** @class */ (function () {
         /**
@@ -52332,7 +52332,7 @@ var BABYLON;
             this._currentRenderId = this._scene.getRenderId();
             // Get everything ready to render
             this._initialize();
-            this._currentActiveCount = Math.min(this._activeCount, this._currentActiveCount + this.emitRate);
+            this._currentActiveCount = Math.min(this._activeCount, this._currentActiveCount + (this.emitRate * this._timeDelta) | 0);
             // Enable update effect
             this._engine.enableEffect(this._updateEffect);
             this._engine.setState(false);
@@ -87890,6 +87890,9 @@ var BABYLON;
         NullEngine.prototype.getLockstepMaxSteps = function () {
             return this._options.lockstepMaxSteps;
         };
+        NullEngine.prototype.getHardwareScalingLevel = function () {
+            return 1.0;
+        };
         NullEngine.prototype.createVertexBuffer = function (vertices) {
             return {
                 capacity: 0,
@@ -108806,6 +108809,7 @@ var BABYLON;
                     _this._progressCallback = onProgress;
                     _this._state = BABYLON.GLTFLoaderState.Loading;
                     _this._loadData(data);
+                    _this._checkExtensions();
                     var promises = new Array();
                     if (nodes) {
                         promises.push(_this._loadNodesAsync(nodes));
@@ -108902,6 +108906,17 @@ var BABYLON;
                     }
                 }
             };
+            GLTFLoader.prototype._checkExtensions = function () {
+                if (this._gltf.extensionsRequired) {
+                    for (var _i = 0, _a = this._gltf.extensionsRequired; _i < _a.length; _i++) {
+                        var name_2 = _a[_i];
+                        var extension = this._extensions[name_2];
+                        if (!extension || !extension.enabled) {
+                            throw new Error("Require extension " + name_2 + " is not available");
+                        }
+                    }
+                }
+            };
             GLTFLoader.prototype._createRootNode = function () {
                 this._rootBabylonMesh = new BABYLON.Mesh("__root__", this._babylonScene);
                 var rootNode = { _babylonMesh: this._rootBabylonMesh };
@@ -110044,8 +110059,8 @@ var BABYLON;
             };
             GLTFLoader.prototype._applyExtensions = function (actionAsync) {
                 for (var _i = 0, _a = GLTFLoader._Names; _i < _a.length; _i++) {
-                    var name_2 = _a[_i];
-                    var extension = this._extensions[name_2];
+                    var name_3 = _a[_i];
+                    var extension = this._extensions[name_3];
                     if (extension.enabled) {
                         var promise = actionAsync(extension);
                         if (promise) {

+ 2 - 2
src/Particles/babylon.gpuParticleSystem.ts

@@ -2,7 +2,7 @@
     /**
      * This represents a GPU particle system in Babylon
      * This is the fastest particle system in Babylon as it uses the GPU to update the individual particle data
-     * @see https://www.babylonjs-playground.com/#PU4WYI#2
+     * @see https://www.babylonjs-playground.com/#PU4WYI#4
      */
     export class GPUParticleSystem implements IDisposable, IParticleSystem, IAnimatable {
         /**
@@ -501,7 +501,7 @@
             // Get everything ready to render
             this. _initialize();
 
-            this._currentActiveCount = Math.min(this._activeCount, this._currentActiveCount + this.emitRate);
+            this._currentActiveCount = Math.min(this._activeCount, this._currentActiveCount + (this.emitRate * this._timeDelta) | 0);
             
             // Enable update effect