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

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 1092 - 1083
Playground/babylon.d.txt


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


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


+ 9 - 4
dist/preview release/babylon.max.js

@@ -65948,6 +65948,9 @@ var BABYLON;
                 this._renderFunction = this.update.bind(this);
             }
             Object.defineProperty(SkeletonViewer.prototype, "debugMesh", {
+                /**
+                 * Returns the mesh used to render the bones
+                 */
                 get: function () {
                     return this._debugMesh;
                 },
@@ -84927,11 +84930,13 @@ var BABYLON;
             for (var i = 0; i < cams.length; i++) {
                 var camera = cams[i];
                 var cameraName = camera.name;
-                this._postProcesses[this._singleInstance ? 0 : cameraName].forEach(function (postProcess) {
-                    camera.detachPostProcess(postProcess);
-                });
+                var postProcesses = this._postProcesses[this._singleInstance ? 0 : cameraName];
+                if (postProcesses) {
+                    this._postProcesses[this._singleInstance ? 0 : cameraName].forEach(function (postProcess) {
+                        camera.detachPostProcess(postProcess);
+                    });
+                }
                 if (this._cameras[cameraName]) {
-                    //this._indicesForCamera.splice(index, 1);
                     this._cameras[cameraName] = null;
                 }
             }

+ 9 - 4
dist/preview release/babylon.no-module.max.js

@@ -65915,6 +65915,9 @@ var BABYLON;
                 this._renderFunction = this.update.bind(this);
             }
             Object.defineProperty(SkeletonViewer.prototype, "debugMesh", {
+                /**
+                 * Returns the mesh used to render the bones
+                 */
                 get: function () {
                     return this._debugMesh;
                 },
@@ -84894,11 +84897,13 @@ var BABYLON;
             for (var i = 0; i < cams.length; i++) {
                 var camera = cams[i];
                 var cameraName = camera.name;
-                this._postProcesses[this._singleInstance ? 0 : cameraName].forEach(function (postProcess) {
-                    camera.detachPostProcess(postProcess);
-                });
+                var postProcesses = this._postProcesses[this._singleInstance ? 0 : cameraName];
+                if (postProcesses) {
+                    this._postProcesses[this._singleInstance ? 0 : cameraName].forEach(function (postProcess) {
+                        camera.detachPostProcess(postProcess);
+                    });
+                }
                 if (this._cameras[cameraName]) {
-                    //this._indicesForCamera.splice(index, 1);
                     this._cameras[cameraName] = null;
                 }
             }

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


+ 9 - 4
dist/preview release/es6.js

@@ -65915,6 +65915,9 @@ var BABYLON;
                 this._renderFunction = this.update.bind(this);
             }
             Object.defineProperty(SkeletonViewer.prototype, "debugMesh", {
+                /**
+                 * Returns the mesh used to render the bones
+                 */
                 get: function () {
                     return this._debugMesh;
                 },
@@ -84894,11 +84897,13 @@ var BABYLON;
             for (var i = 0; i < cams.length; i++) {
                 var camera = cams[i];
                 var cameraName = camera.name;
-                this._postProcesses[this._singleInstance ? 0 : cameraName].forEach(function (postProcess) {
-                    camera.detachPostProcess(postProcess);
-                });
+                var postProcesses = this._postProcesses[this._singleInstance ? 0 : cameraName];
+                if (postProcesses) {
+                    this._postProcesses[this._singleInstance ? 0 : cameraName].forEach(function (postProcess) {
+                        camera.detachPostProcess(postProcess);
+                    });
+                }
                 if (this._cameras[cameraName]) {
-                    //this._indicesForCamera.splice(index, 1);
                     this._cameras[cameraName] = null;
                 }
             }

+ 21 - 15
dist/preview release/viewer/babylon.viewer.d.ts

@@ -897,6 +897,26 @@ declare module BabylonViewer {
     }
 }
 declare module BabylonViewer {
+    export interface IViewerTemplatePlugin {
+        readonly templateName: string;
+        readonly eventsToAttach?: Array<string>;
+        interactionPredicate(event: EventCallback): boolean;
+        onEvent?(event: EventCallback): void;
+        addHTMLTemplate?(template: Template): void;
+    }
+    export abstract class AbstractViewerNavbarButton implements IViewerTemplatePlugin {
+        readonly templateName: string;
+        readonly eventsToAttach: Array<string>;
+        protected _prepend: boolean;
+        protected _buttonName: string;
+        protected _buttonClass: string;
+        protected _htmlTemplate: string;
+        constructor(buttonName: string, buttonClass?: string, htmlTemplate?: string);
+        interactionPredicate(event: EventCallback): boolean;
+        abstract onEvent(event: EventCallback): void;
+        addHTMLTemplate(template: Template): void;
+        protected _generateHTMLElement(template: Template): Element | DocumentFragment;
+    }
 }
 declare module BabylonViewer {
     /**
@@ -904,7 +924,7 @@ declare module BabylonViewer {
       * @param name the name of the custom optimizer configuration
       * @param upgrade set to true if you want to upgrade optimizer and false if you want to degrade
       */
-    export function getCustomOptimizerByName(name: string, upgrade?: boolean): typeof extendedUpgrade;
+    export function getCustomOptimizerByName(name: string, upgrade?: boolean): (sceneManager: SceneManager) => boolean;
     export function registerCustomOptimizer(name: string, optimizer: (sceneManager: SceneManager) => boolean): void;
 }
 declare module BabylonViewer {
@@ -1538,20 +1558,6 @@ declare module BabylonViewer {
     export function addLoaderPlugin(name: string, plugin: ILoaderPlugin): void;
 }
 declare module BabylonViewer {
-    /**
-        * A custom upgrade-oriented function configuration for the scene optimizer.
-        *
-        * @param viewer the viewer to optimize
-        */
-    export function extendedUpgrade(sceneManager: SceneManager): boolean;
-    /**
-        * A custom degrade-oriented function configuration for the scene optimizer.
-        *
-        * @param viewer the viewer to optimize
-        */
-    export function extendedDegrade(sceneManager: SceneManager): boolean;
-}
-declare module BabylonViewer {
 }
 declare module BabylonViewer {
     export interface IEnvironmentMapConfiguration {

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


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


+ 22 - 19
dist/preview release/viewer/babylon.viewer.module.d.ts

@@ -961,18 +961,37 @@ declare module 'babylonjs-viewer/loader/plugins/loaderPlugin' {
 }
 
 declare module 'babylonjs-viewer/templating/viewerTemplatePlugin' {
-    
+    import { EventCallback, Template } from "babylonjs-viewer/templating/templateManager";
+    export interface IViewerTemplatePlugin {
+        readonly templateName: string;
+        readonly eventsToAttach?: Array<string>;
+        interactionPredicate(event: EventCallback): boolean;
+        onEvent?(event: EventCallback): void;
+        addHTMLTemplate?(template: Template): void;
+    }
+    export abstract class AbstractViewerNavbarButton implements IViewerTemplatePlugin {
+        readonly templateName: string;
+        readonly eventsToAttach: Array<string>;
+        protected _prepend: boolean;
+        protected _buttonName: string;
+        protected _buttonClass: string;
+        protected _htmlTemplate: string;
+        constructor(buttonName: string, buttonClass?: string, htmlTemplate?: string);
+        interactionPredicate(event: EventCallback): boolean;
+        abstract onEvent(event: EventCallback): void;
+        addHTMLTemplate(template: Template): void;
+        protected _generateHTMLElement(template: Template): Element | DocumentFragment;
+    }
 }
 
 declare module 'babylonjs-viewer/optimizer/custom' {
-    import { extendedUpgrade } from "babylonjs-viewer/optimizer/custom/extended";
     import { SceneManager } from "babylonjs-viewer/managers/sceneManager";
     /**
       *
       * @param name the name of the custom optimizer configuration
       * @param upgrade set to true if you want to upgrade optimizer and false if you want to degrade
       */
-    export function getCustomOptimizerByName(name: string, upgrade?: boolean): typeof extendedUpgrade;
+    export function getCustomOptimizerByName(name: string, upgrade?: boolean): (sceneManager: SceneManager) => boolean;
     export function registerCustomOptimizer(name: string, optimizer: (sceneManager: SceneManager) => boolean): void;
 }
 
@@ -1643,22 +1662,6 @@ declare module 'babylonjs-viewer/loader/plugins' {
     export function addLoaderPlugin(name: string, plugin: ILoaderPlugin): void;
 }
 
-declare module 'babylonjs-viewer/optimizer/custom/extended' {
-    import { SceneManager } from 'babylonjs-viewer/managers/sceneManager';
-    /**
-        * A custom upgrade-oriented function configuration for the scene optimizer.
-        *
-        * @param viewer the viewer to optimize
-        */
-    export function extendedUpgrade(sceneManager: SceneManager): boolean;
-    /**
-        * A custom degrade-oriented function configuration for the scene optimizer.
-        *
-        * @param viewer the viewer to optimize
-        */
-    export function extendedDegrade(sceneManager: SceneManager): boolean;
-}
-
 declare module 'babylonjs-viewer/configuration/interfaces' {
     export * from 'babylonjs-viewer/configuration/interfaces/cameraConfiguration';
     export * from 'babylonjs-viewer/configuration/interfaces/colorGradingConfiguration';

+ 3 - 0
src/Debug/babylon.skeletonViewer.ts

@@ -13,6 +13,9 @@ module BABYLON.Debug {
         private _isEnabled = false;
         private _renderFunction: () => void;
 
+        /**
+         * Returns the mesh used to render the bones
+         */
         public get debugMesh(): Nullable<LinesMesh> {
             return this._debugMesh;
         }

+ 7 - 4
src/PostProcess/RenderPipeline/babylon.postProcessRenderEffect.ts

@@ -151,12 +151,15 @@ module BABYLON {
             for (var i = 0; i < cams.length; i++) {
                 var camera: Camera = cams[i];
                 var cameraName: string = camera.name;
-                this._postProcesses[this._singleInstance ? 0 : cameraName].forEach((postProcess: PostProcess) => {
-                    camera.detachPostProcess(postProcess);
-                });
+                const postProcesses = this._postProcesses[this._singleInstance ? 0 : cameraName];
+
+                if (postProcesses) {
+                    this._postProcesses[this._singleInstance ? 0 : cameraName].forEach((postProcess: PostProcess) => {
+                        camera.detachPostProcess(postProcess);
+                    });
+                }
 
                 if (this._cameras[cameraName]) {
-                    //this._indicesForCamera.splice(index, 1);
                     this._cameras[cameraName] = null;
                 }
             }