ソースを参照

fixes after rebase

Daniel 9 年 前
コミット
ef78e22bde
3 ファイル変更14 行追加7 行削除
  1. 1 1
      editor/js/Loader.js
  2. 1 3
      editor/js/Sidebar.Geometry.js
  3. 12 3
      editor/js/Sidebar.Material.js

+ 1 - 1
editor/js/Loader.js

@@ -24,7 +24,7 @@ var Loader = function ( editor ) {
 					var loader = new THREE.AMFLoader();
 					var amfobject = loader.parse( event.target.result );
 
-					editor.addObject( amfobject );
+					editor.execute( new CmdAddObject( amfobject ) );
 					editor.select( amfobject );
 
 				}, false );

+ 1 - 3
editor/js/Sidebar.Geometry.js

@@ -62,9 +62,7 @@ Sidebar.Geometry = function ( editor ) {
 
 				if ( geometry instanceof THREE.Geometry ) {
 
-					object.geometry = new THREE.BufferGeometry().fromGeometry( geometry );
-
-					signals.geometryChanged.dispatch( object );
+					editor.execute( new CmdSetGeometry( object, new THREE.BufferGeometry().fromGeometry( geometry ) ) );
 
 				}
 

+ 12 - 3
editor/js/Sidebar.Material.js

@@ -557,9 +557,18 @@ Sidebar.Material = function ( editor ) {
 
 				if ( objectHasUvs ) {
 
-					material.displacementMap = displacementMapEnabled ? materialDisplacementMap.getValue() : null;
-					material.displacementScale = materialDisplacementScale.getValue();
-					material.needsUpdate = true;
+					var displacementMap = displacementMapEnabled ? materialDisplacementMap.getValue() : null;
+					if ( material.displacementMap !== displacementMap ) {
+
+						editor.execute( new CmdSetMaterialMap( currentObject, 'displacementMap', displacementMap ) );
+
+					}
+
+					if ( material.displacementScale !== materialDisplacementScale.getValue() ) {
+
+						editor.execute( new CmdSetMaterialValue( currentObject, 'displacementScale', materialDisplacementScale.getValue() ) );
+
+					}
 
 				} else {