Browse Source

Editor: Added transmission support. (#21896)

Mr.doob 4 năm trước cách đây
mục cha
commit
a5d903ffcf
2 tập tin đã thay đổi với 26 bổ sung0 xóa
  1. 23 0
      editor/js/Sidebar.Material.js
  2. 3 0
      editor/js/Strings.js

+ 23 - 0
editor/js/Sidebar.Material.js

@@ -176,6 +176,16 @@ function SidebarMaterial( editor ) {
 	container.add( materialSheenRow );
 	*/
 
+	// transmission
+
+	var materialTransmissionRow = new UIRow();
+	var materialTransmission = new UINumber( 1 ).setWidth( '30px' ).setRange( 0, 1 ).onChange( update );
+
+	materialTransmissionRow.add( new UIText( strings.getKey( 'sidebar/material/transmission' ) ).setWidth( '90px' ) );
+	materialTransmissionRow.add( materialTransmission );
+
+	container.add( materialTransmissionRow );
+
 	// emissive
 
 	var materialEmissiveRow = new UIRow();
@@ -682,6 +692,12 @@ function SidebarMaterial( editor ) {
 			}
 			*/
 
+			if ( material.transmission !== undefined && Math.abs( material.transmission - materialTransmission.getValue() ) >= epsilon ) {
+
+				editor.execute( new SetMaterialValueCommand( editor, currentObject, 'transmission', materialTransmission.getValue(), currentMaterialSlot ) );
+
+			}
+
 			if ( material.emissive !== undefined && material.emissive.getHex() !== materialEmissive.getHexValue() ) {
 
 				editor.execute( new SetMaterialColorCommand( editor, currentObject, 'emissive', materialEmissive.getHexValue(), currentMaterialSlot ) );
@@ -1232,6 +1248,7 @@ function SidebarMaterial( editor ) {
 			'metalness': materialMetalnessRow,
 			'emissive': materialEmissiveRow,
 			// 'sheen': materialSheenRow,
+			'transmission': materialTransmissionRow,
 			'specular': materialSpecularRow,
 			'shininess': materialShininessRow,
 			'clearcoat': materialClearcoatRow,
@@ -1377,6 +1394,12 @@ function SidebarMaterial( editor ) {
 		}
 		*/
 
+		if ( material.transmission !== undefined ) {
+
+			materialTransmission.setValue( material.transmission );
+
+		}
+
 		if ( material.emissive !== undefined ) {
 
 			materialEmissive.setHexValue( material.emissive.getHexString() );

+ 3 - 0
editor/js/Strings.js

@@ -243,6 +243,7 @@ function Strings( config ) {
 			'sidebar/material/roughness': 'Roughness',
 			'sidebar/material/metalness': 'Metalness',
 			'sidebar/material/sheen': 'Sheen',
+			'sidebar/material/transmission': 'Transmission',
 			'sidebar/material/emissive': 'Emissive',
 			'sidebar/material/specular': 'Specular',
 			'sidebar/material/shininess': 'Shininess',
@@ -577,6 +578,7 @@ function Strings( config ) {
 			'sidebar/material/roughness': 'Rugosité',
 			'sidebar/material/metalness': 'Métal',
 			'sidebar/material/sheen': 'Éclat',
+			'sidebar/material/transmission': 'Transmission',
 			'sidebar/material/emissive': 'Émissif',
 			'sidebar/material/specular': 'Spéculaire',
 			'sidebar/material/shininess': 'Brillance',
@@ -911,6 +913,7 @@ function Strings( config ) {
 			'sidebar/material/roughness': '粗糙度',
 			'sidebar/material/metalness': '金属度',
 			'sidebar/material/sheen': '光泽',
+			'sidebar/material/transmission': 'Transmission',
 			'sidebar/material/emissive': '自发光',
 			'sidebar/material/specular': '高光',
 			'sidebar/material/shininess': '高光大小',