提交 5cf2b5c0 编写于 作者: A alteredq

Fixed vertex color demo.

上级 cfbaaa4f
......@@ -91,40 +91,51 @@
mesh.rotation.x = - 90 * Math.PI / 180;
scene.addObject( mesh );
var color, p, colors = [], colors2 = [], colors3 = [],
geometry = new Icosahedron( 1 ),
geometry2 = new THREE.Geometry(),
geometry3 = new THREE.Geometry();
for( var i = 0; i < geometry.vertices.length; i++ ) {
p = geometry.vertices[ i ].position;
color = new THREE.Color( 0xffffff );
color.setHSV( ( p.y + 1 ) / 2, 1.0, 1.0 );
colors[ i ] = color;
color = new THREE.Color( 0xffffff );
color.setHSV( 0.0, ( p.y + 1 ) / 2, 1.0 );
colors2[ i ] = color;
color = new THREE.Color( 0xffffff );
color.setHSV( 0.125 * i/geometry.vertices.length, 1.0, 1.0 );
colors3[ i ] = color;
var faceIndices = [ 'a', 'b', 'c', 'd' ];
var color, f, f2, f3, p, n, vertexIndex,
geometry = new Icosahedron( 1 ),
geometry2 = new Icosahedron( 1 ),
geometry3 = new Icosahedron( 1 );
for( var i = 0; i < geometry.faces.length; i++ ) {
f = geometry.faces[ i ];
f2 = geometry2.faces[ i ];
f3 = geometry3.faces[ i ];
n = ( f instanceof THREE.Face3 ) ? 3 : 4;
for( var j = 0; j < n; j++ ) {
vertexIndex = f[ faceIndices[ j ] ];
p = geometry.vertices[ vertexIndex ].position;
color = new THREE.Color( 0xffffff );
color.setHSV( ( p.y + 1 ) / 2, 1.0, 1.0 );
f.vertexColors[ j ] = color;
color = new THREE.Color( 0xffffff );
color.setHSV( 0.0, ( p.y + 1 ) / 2, 1.0 );
f2.vertexColors[ j ] = color;
color = new THREE.Color( 0xffffff );
color.setHSV( 0.125 * vertexIndex/geometry.vertices.length, 1.0, 1.0 );
f3.vertexColors[ j ] = color;
}
}
geometry3.vertices = geometry2.vertices = geometry.vertices;
geometry3.faces = geometry2.faces = geometry.faces;
geometry.colors = colors;
geometry2.colors = colors2;
geometry3.colors = colors3;
var materials = [
new THREE.MeshLambertMaterial( { color: 0xffffff, shading: THREE.FlatShading, vertexColors: true } ),
new THREE.MeshLambertMaterial( { color: 0xffffff, shading: THREE.FlatShading, vertexColors: THREE.VertexColors } ),
new THREE.MeshBasicMaterial( { color: 0x000000, shading: THREE.FlatShading, wireframe: true } )
];
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册