Я хочу сделать собирание с помощью IdMapping в Three.jsThreejs: назначить различные цвета для каждой вершины в геометрии
Из-за проблем с производительностью у меня только одна огромная геометрия, рассчитанная следующим образом:
for (var i = 0; i < numberOfVertices; i += 9) {
p1 = new THREE.Vector3(graphData.triangles.vertices[i+0], graphData.triangles.vertices[i+1], graphData.triangles.vertices[i+2]);
p2 = new THREE.Vector3(graphData.triangles.vertices[i+3], graphData.triangles.vertices[i+4], graphData.triangles.vertices[i+5]);
p3 = new THREE.Vector3(graphData.triangles.vertices[i+6], graphData.triangles.vertices[i+7], graphData.triangles.vertices[i+8]);
geometry.vertices.push(new THREE.Vertex(p1.clone()));
geometry.vertices.push(new THREE.Vertex(p2.clone()));
geometry.vertices.push(new THREE.Vertex(p3.clone()));
geometry.faces.push(new THREE.Face3(i/3, i/3+1, i/3+2));
// i want to do something like this:
geometry.colors.push(new THREE.Color(0xFF0000));
geometry.colors.push(new THREE.Color(0xFF0000));
geometry.colors.push(new THREE.Color(0xFF0000));
}
geometry.computeFaceNormals();
var material = new THREE.MeshBasicMaterial({});
var triangles = new THREE.Mesh(geometry, material);
scene.add(triangles);
Как назначить разные цвета каждой вершине в моей геометрии?
По крайней мере, для меня я мог установить только .vertexColors на грани моей геометрии, например geometry.faces [0] .vertexColors [0] = .. –
Возможно, это изменилось в последней версии из трех. Какую ревизию вы используете? – sole
Я использую ток? Версия r49 –