실제로 this 질문을 찾았지만 material.color
은 존재하지 않는다고 말합니다. 큐브의 얼굴의 색상을 사용자가 설정하는 방법큐브의 얼굴 색상을 변경하십시오.
var newCube = new THREE.Mesh(new three.CubeGeometry(size, size, size), new three.MeshNormalMaterial({ vertexColors: three.FaceColors }));
다음
실제로 this 질문을 찾았지만 material.color
은 존재하지 않는다고 말합니다. 큐브의 얼굴의 색상을 사용자가 설정하는 방법큐브의 얼굴 색상을 변경하십시오.
var newCube = new THREE.Mesh(new three.CubeGeometry(size, size, size), new three.MeshNormalMaterial({ vertexColors: three.FaceColors }));
다음
이며 변경 :
var geometry = new THREE.BoxGeometry(size, size, size);
for (var i = 0; i < geometry.faces.length; i ++) {
geometry.faces[ i ].color.setHex(Math.random() * 0xffffff);
}
var material = new THREE.MeshBasicMaterial({ color: 0xffffff, vertexColors: THREE.FaceColors });
하는 경우를 나는 그리기 해요 큐브의 다양한면의 색상을 변경하는 방법을 알아야 도형이으로 렌더링 된 후 geometry.faces[i].color
이 변경된 후에 으로 변경 한 경우 geometry.colorsNeedUpdate = true
을 설정해야합니다. (이것은 canvasRenderer
필요하지 않습니다.)
three.js를 여기까지와이 코드가 작동보고 싶은 사람들을위한 r.84
is a fiddle합니다.
난 박스 만들었고면에 3 색 묶어 : 얼굴 색이animate
루프 변경
// colors
red = new THREE.Color(1, 0, 0);
green = new THREE.Color(0, 1, 0);
blue = new THREE.Color(0, 0, 1);
var colors = [red, green, blue];
for (var i = 0; i < 3; i++) {
geometry.faces[4 * i].color = colors[i];
geometry.faces[4 * i + 1].color = colors[i];
geometry.faces[4 * i + 2].color = colors[i];
geometry.faces[4 * i + 3].color = colors[i];
}
한다.