2017-02-17 4 views
0


Я пытаюсь создать простую 3d-игру с three.js. Я пытаюсь создать цветные кубы, но все кубы остаются одного цвета.Three.js - настройка цвета куба?

Когда я создаю кубик я делаю:

var geometry = new THREE.BoxGeometry(width, height, length); 
var material = new THREE.MeshNormalMaterial({color: hexColor}); 
var cube = new THREE.Mesh(geometry, material); 

(который находится внутри функции)
Затем я использую функцию дважды, hexColor быть 0x0000FF (синий) и 0xff0000 (красный). Кубы производят, но все грани кубов - разные цвета. Я также попытался

cube.material.color.setHex(); 

Но он выдает неперехваченным TypeError: Не удается прочитать свойство «setHex» неопределенной

, пожалуйста, помогите !!

ответ

1

Ваша проблема заключается в том, что THREE.MeshNormalMaterial() не имеет свойства цвета. Вместо этого попробуйте использовать THREE.MeshBasicMaterial({ color: yourHexColor });.

Если вы это сделаете, ваш звонок cube.material.color.setHex(yourHexColor); должен работать нормально.

Вы можете найти всю необходимую информацию по Three.js docs page и, если вам интересно, ознакомьтесь с выделенным examples page.

+0

Yay! Это сработало! Спасибо! – JHacking