Browse Source

PLYExporter Example: Add vertex colors for testing (#23375)

* Add vertex colors to ply exporter example

* update screenshot
Garrett Johnson 3 years ago
parent
commit
3496702df8
2 changed files with 12 additions and 1 deletions
  1. 12 1
      examples/misc_exporter_ply.html
  2. BIN
      examples/screenshots/misc_exporter_ply.jpg

+ 12 - 1
examples/misc_exporter_ply.html

@@ -77,7 +77,17 @@
 				// export mesh
 				// export mesh
 
 
 				const geometry = new THREE.BoxGeometry( 50, 50, 50 );
 				const geometry = new THREE.BoxGeometry( 50, 50, 50 );
-				const material = new THREE.MeshPhongMaterial( { color: 0x00ff00 } );
+				const material = new THREE.MeshPhongMaterial( { vertexColors: true } );
+
+				// color vertices based on vertex positions
+				const colors = geometry.getAttribute( 'position' ).array.slice();
+				for ( let i = 0, l = colors.length; i < l; i ++ ) {
+
+					if ( colors[ i ] > 0 ) colors[ i ] = 0.5;
+					else colors[ i ] = 0;
+
+				}
+				geometry.setAttribute( 'color', new THREE.BufferAttribute( colors, 3, false ) );
 
 
 				mesh = new THREE.Mesh( geometry, material );
 				mesh = new THREE.Mesh( geometry, material );
 				mesh.castShadow = true;
 				mesh.castShadow = true;
@@ -87,6 +97,7 @@
 				//
 				//
 
 
 				renderer = new THREE.WebGLRenderer( { antialias: true } );
 				renderer = new THREE.WebGLRenderer( { antialias: true } );
+				renderer.outputEncoding = THREE.sRGBEncoding;
 				renderer.setPixelRatio( window.devicePixelRatio );
 				renderer.setPixelRatio( window.devicePixelRatio );
 				renderer.setSize( window.innerWidth, window.innerHeight );
 				renderer.setSize( window.innerWidth, window.innerHeight );
 				renderer.shadowMap.enabled = true;
 				renderer.shadowMap.enabled = true;

BIN
examples/screenshots/misc_exporter_ply.jpg