diff --git a/editor/index.html b/editor/index.html index 2faf8543caea91cf76546af6192112a6f8e97798..9505fa91a5f88f84fac730135586be4a79659259 100644 --- a/editor/index.html +++ b/editor/index.html @@ -158,6 +158,7 @@ signals.objectRemoved.add( saveState ); signals.materialChanged.add( saveState ); signals.sceneBackgroundChanged.add( saveState ); + signals.sceneEnvironmentChanged.add( saveState ); signals.sceneFogChanged.add( saveState ); signals.sceneGraphChanged.add( saveState ); signals.scriptChanged.add( saveState ); diff --git a/editor/js/Editor.js b/editor/js/Editor.js index 393a621096942bfd5655747dc4ea38da307f23cd..7abf8db4e4507dc72fbd25c08020697ab7de57ca 100644 --- a/editor/js/Editor.js +++ b/editor/js/Editor.js @@ -132,6 +132,7 @@ Editor.prototype = { this.scene.name = scene.name; this.scene.background = scene.background; + this.scene.environment = scene.environment; this.scene.fog = scene.fog; this.scene.userData = JSON.parse( JSON.stringify( scene.userData ) ); diff --git a/editor/js/Sidebar.Scene.js b/editor/js/Sidebar.Scene.js index 20edee7fded871429046348b538138d0be634bec..3a70f5f03ab796f6c9fe633263c1b31dc68a0517 100644 --- a/editor/js/Sidebar.Scene.js +++ b/editor/js/Sidebar.Scene.js @@ -402,7 +402,12 @@ function SidebarScene( editor ) { if ( scene.environment ) { - // TODO + if ( scene.environment.mapping === THREE.EquirectangularReflectionMapping ) { + + environmentType.setValue( 'Equirectangular' ); + environmentEquirectangularTexture.setValue( scene.environment ); + + } } else { @@ -434,6 +439,7 @@ function SidebarScene( editor ) { } refreshBackgroundUI(); + refreshEnvironmentUI(); refreshFogUI(); } diff --git a/editor/js/libs/ui.three.js b/editor/js/libs/ui.three.js index 43c191670da81e2b4085f182ef950f3e9b7f4a7a..bc85373e4a59216af7b0d65b6345800b1fd41716 100644 --- a/editor/js/libs/ui.three.js +++ b/editor/js/libs/ui.three.js @@ -56,7 +56,7 @@ class UITexture extends UISpan { // assuming RGBE/Radiance HDR iamge format - const loader = new RGBELoader().setDataType( THREE.UnsignedByteType ); + const loader = new RGBELoader().setDataType( THREE.FloatType ); loader.load( event.target.result, function ( hdrTexture ) { hdrTexture.sourceFile = file.name;