Недавно я начал играть с three.js и использую демоверсию terrain.js в качестве начало дизайн-проекта, над которым я работаю.
Я хотел бы добавить гибридный шейдер «каркас/ламберт», по умолчанию он поставляется только с шейдером проволоки.
Это код из демонстрации с использованием основного материала:
var matrix = new THREE.MeshBasicMaterial({
color:0x10ce58,
wireframe:true
});
var geometry = new THREE.PlaneGeometry(width, height, modelWidth, modelHeight);
mesh = new THREE.Mesh(geometry, matrix);
mesh.doubleSided = false;
и я пробовал что-то вроде этого, но я получаю только рендеринг «ламберт», а не ламберт и проволоку вместе взятые, есть идеи?
var darkMaterial = new THREE.MeshLambertMaterial( { color: 0xffffff , shading: THREE.FlatShading, overdraw: true} );
var wireframeMaterial = new THREE.MeshBasicMaterial( { color: 0x10ce58, wireframe: true, transparent: true } );
var multiMaterial = [ darkMaterial, wireframeMaterial ];
var geometry = new THREE.PlaneGeometry(width, height, modelWidth, modelHeight);
mesh = new THREE.Mesh(geometry, multiMaterial);
mesh.doubleSided = false;
Спасибо за ваше время заранее,
С Уважением
-Мануэль