2
0
Эх сурвалжийг харах

Editor: Store equirectangular environment (#22187)

Mr.doob 4 жил өмнө
parent
commit
9afaec0990

+ 1 - 0
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 );

+ 1 - 0
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 ) );

+ 7 - 1
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();
 
 	}

+ 1 - 1
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;