Я пытаюсь использовать Three.js для рендеринга куба с 6 различными изображениями на лицах.
Конструктор THREE.CubeGeometry выглядит следующим образом:
THREE.CubeGeometry = function ( width, height, depth, segmentsWidth, segmentsHeight, segmentsDepth, materials, sides )
Из кода видно, что "материалы" должны быть либо материалом, либо массивом из 6 разных материалов, но материалы, переданные здесь, никогда не используются при рендеринге.
Вместо этого единственный материал, предоставленный конструктору Mesh, используется для всех 6 граней.
var face_materials = ... <load 6 textures here>...
var cube_g = new THREE.CubeGeometry(400,400,400,1,1,1, face_materials); // <= ignored?
var cube = new THREE.Mesh(cube_g, some_material); // <= this is used instead
Даже если я передаю null или undefined как "some_material", он, кажется, переопределяет face_materials и ничего не отображает.
Есть ли способ сделать эту работу с помощью CubeGeometry? Или мне нужно создать 6 граней отдельно и добавить их в сцену?