From 8c2d03ac9850bba5299fc44b58197f62daf20d0b Mon Sep 17 00:00:00 2001 From: ChenX Date: Tue, 26 Sep 2017 14:40:35 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E6=9D=90=E8=B4=A8=E7=90=83?= =?UTF-8?q?=E7=9A=84=E7=81=AF=E5=85=89=E5=BC=BA=E5=BA=A6.=20=E8=AE=BE?= =?UTF-8?q?=E7=BD=AEGPU=E9=80=89=E6=8B=A9=E6=97=B6,=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=E6=B8=B2=E6=9F=93=E5=99=A8=E5=8F=82=E6=95=B0=E4=BB=A5=E9=98=B2?= =?UTF-8?q?=E6=AD=A2=E6=B8=B2=E6=9F=93=E9=94=99=E8=AF=AF.=20(=E5=B7=B2?= =?UTF-8?q?=E7=9F=A5=E9=97=AE=E9=A2=98,=E7=81=AF=E5=85=89=E5=8A=A9?= =?UTF-8?q?=E6=89=8B=E6=97=A0=E6=B3=95=E4=BD=BF=E7=94=A8GPU=E6=8B=BE?= =?UTF-8?q?=E5=8F=96.)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Editor/MaterialEditor.ts | 2 ++ src/Editor/SelectControls.ts | 29 ++++++++++++++++++++++++++++- 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/src/Editor/MaterialEditor.ts b/src/Editor/MaterialEditor.ts index 2686aa09c..7ab4b2d5c 100644 --- a/src/Editor/MaterialEditor.ts +++ b/src/Editor/MaterialEditor.ts @@ -93,10 +93,12 @@ export class MaterialEditor //Ambient light 环境光 var ambient = new THREE.AmbientLight(0x999999); + ambient.intensity = 2.5 scene.add(ambient); //Pontual light 点光源 var point = new THREE.PointLight(0x999999); + point.intensity = 2.5; point.position.set(-0.5, 1, 1.5); scene.add(point); diff --git a/src/Editor/SelectControls.ts b/src/Editor/SelectControls.ts index d9c956de3..030d02614 100644 --- a/src/Editor/SelectControls.ts +++ b/src/Editor/SelectControls.ts @@ -84,15 +84,40 @@ export class SelectControls this.m_SelectIng = false; } + setRenderVar(render: THREE.WebGLRenderer, renderVar: Object) + { + let saveVar = {}; + for (let name in renderVar) + { + saveVar[name] = render[name]; + render[name] = renderVar[name]; + } + return saveVar; + } select() { let view = app.m_Viewer; let render = view.m_Render; + + //设置渲染器设置 + let renderVar = { + toneMappingExposure: 1, + gammaInput: false, + gammaOutput: false, + physicallyCorrectLights: false, + toneMapping: THREE.NoToneMapping, + } + let saveVar = this.setRenderVar(render, renderVar); + render.context.disable(render.context.DEPTH_TEST); + let pickingTexture = new THREE.WebGLRenderTarget(view.m_HtmlElement.clientWidth, view.m_HtmlElement.clientHeight); render.render(view.m_Scene, view.m_Camera.m_CurCamera, pickingTexture); - //create buffer for reading single pixel + render.context.enable(render.context.DEPTH_TEST); + this.setRenderVar(render, saveVar); + + //create buffer for reading single pixel let b2 = new THREE.Box2(); b2.setFromPoints([ new THREE.Vector2(this.m_SelectCss.start.x, this.m_SelectCss.start.y), @@ -123,5 +148,7 @@ export class SelectControls { return view.m_Scene.getObjectById(id); }); + this.m_Viewer.m_OutlinePass.selectedObjects = + this.m_Viewer.m_OutlinePass.selectedObjects.filter(o => { return o != undefined }) } } \ No newline at end of file