我最近開始玩three.js,我使用terrain.js演示作爲我正在開發的設計項目。自定義terrain.js(three.js)需要添加lambert /線材
我想添加混合着色器「wireframe/lambert」 默認只有線着色器。
這是從演示代碼,使用基本材料:
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;
感謝您對晚期的時候,
問候
-Manuel
而不是新的THREE.MESH嘗試THREE.SceneUtils.CreateMultiMaterialObject – uhura 2013-03-27 09:09:02
你好Uhura,我試圖玩「創造多材料,但它似乎並沒有工作。這次我使用喬的原始地形生成器。由於我在嘗試將攝像頭對準前一個示例時遇到了一些問題。最後兩者非常相似。我會在下面發表我的例子。謝謝你的幫助! – Manuqc 2013-03-27 22:53:38
這是來自喬的演示的原始「分形地形生成器」的一個jsfiddle:http://jsfiddle.net/uSrsW/2/這是我正在進行的工作,我修改了嵌入的javascript以添加多物體功能,儘管我我沒有得到任何呈現。不知道什麼是錯的。這裏是鏈接:http://jsfiddle.net/xnqUb/3/ – Manuqc 2013-03-27 23:00:20