From e2abe350ccff8ff0fc248e1fed9122b3b0fc6cf5 Mon Sep 17 00:00:00 2001 From: liteng <930372551@qq.com> Date: Mon, 27 Aug 2018 21:22:29 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A8=E6=80=81=E6=98=BE=E7=A4=BA=E9=9A=90?= =?UTF-8?q?=E8=97=8F=E5=90=84=E5=B8=AE=E5=8A=A9=E5=99=A8=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/editor/sidebar/SettingPanel.js | 47 ++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) diff --git a/ShadowEditor.Web/src/editor/sidebar/SettingPanel.js b/ShadowEditor.Web/src/editor/sidebar/SettingPanel.js index 4a5ae343..a3b5d42d 100644 --- a/ShadowEditor.Web/src/editor/sidebar/SettingPanel.js +++ b/ShadowEditor.Web/src/editor/sidebar/SettingPanel.js @@ -398,12 +398,23 @@ SettingPanel.prototype.onSelectTab = function (tabName) { var showGrid = UI.get('showGrid', this.id); showGrid.setValue(this.app.options.showGrid); + var showCamera = UI.get('showCamera', this.id); + showCamera.setValue(this.app.options.showCameraHelper); + var showPointLight = UI.get('showPointLight', this.id); showPointLight.setValue(this.app.options.showPointLightHelper); var showDirectionalLight = UI.get('showDirectionalLight', this.id); showDirectionalLight.setValue(this.app.options.showDirectionalLightHelper); + var showSpotLight = UI.get('showSpotLight', this.id); + showSpotLight.setValue(this.app.options.showSpotLightHelper); + + var showHemisphereLight = UI.get('showHemisphereLight', this.id); + showHemisphereLight.setValue(this.app.options.showHemisphereLightHelper); + + var showSkeleton = UI.get('showSkeleton', this.id); + showSkeleton.setValue(this.app.options.showSkeletonHelper); }; SettingPanel.prototype.onChangeBackgroundType = function () { // 切换背景类型 @@ -542,10 +553,44 @@ SettingPanel.prototype.update = function () { break; } - // 网格 + // 帮助器 var showGrid = UI.get('showGrid', this.id).getValue(); this.app.options.showGrid = showGrid; this.app.editor.grid.visible = showGrid; + + var showCamera = UI.get('showCamera', this.id).getValue(); + this.app.options.showCameraHelper = showCamera; + + var showPointLight = UI.get('showPointLight', this.id).getValue(); + this.app.options.showPointLightHelper = showPointLight; + + var showDirectionalLight = UI.get('showDirectionalLight', this.id).getValue(); + this.app.options.showDirectionalLightHelper = showDirectionalLight; + + var showSpotLight = UI.get('showSpotLight', this.id).getValue(); + this.app.options.showSpotLightHelper = showSpotLight; + + var showHemisphereLight = UI.get('showHemisphereLight', this.id).getValue(); + this.app.options.showHemisphereLightHelper = showHemisphereLight; + + var showSkeleton = UI.get('showSkeleton', this.id).getValue(); + this.app.options.showSkeletonHelper = showSkeleton; + + Object.values(this.app.editor.helpers).forEach(n => { + if (n instanceof THREE.CameraHelper) { + n.visible = showCamera; + } else if (n instanceof THREE.PointLightHelper) { + n.visible = showPointLight; + } else if (n instanceof THREE.DirectionalLightHelper) { + n.visible = showDirectionalLight; + } else if (n instanceof THREE.SpotLightHelper) { + n.visible = showSpotLight; + } else if (n instanceof THREE.HemisphereLightHelper) { + n.visible = showHemisphereLight; + } else if (n instanceof THREE.SkeletonHelper) { + n.visible = showSkeleton; + } + }); }; export default SettingPanel; \ No newline at end of file