如何在Three.js中改变锥体BASE的颜色?

时间:2012-12-27 20:42:09

标签: javascript webgl three.js

我的圆锥体显示在jsfiddle链接中。现在整个锥体是单色的,是蓝色的。但我想将锥形方底的颜色改为红色。为此我需要改变形成Square底座的两个面的颜色。怎么做?

My cone的JsFiddle链接:http://jsfiddle.net/sagh0900/suvKg/1/

function getGeometry(meshMaterial)
{
var cone;
var geo = new THREE.Geometry();
geo.vertices.push(new THREE.Vector3(0, 0, 0));
geo.vertices.push(new THREE.Vector3(-0.5, 0.5, 1));
geo.vertices.push(new THREE.Vector3(0.5, 0.5, 1));
geo.vertices.push(new THREE.Vector3(-0.5, -0.5, 1));
geo.vertices.push(new THREE.Vector3(0.5, -0.5, 1)); 
geo.faces.push( new THREE.Face3(0,1,2));
geo.faces.push( new THREE.Face3(2,1,4));
geo.faces.push( new THREE.Face3(1,3,4));
geo.faces.push( new THREE.Face3(4,3,0));
geo.faces.push( new THREE.Face3(3,1,0));
geo.faces.push( new THREE.Face3(0,2,4));
geo.computeFaceNormals();
cone = new THREE.Mesh(geo, meshMaterial);
cone.doubleSided = true;
cone.overdraw = true;
return cube;
}

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以为顶点指定颜色,然后在材质中使用顶点颜色。有关此过程的示例,请查看示例中的源代码:

http://stemkoski.github.com/Three.js/Vertex-Colors.html