如何在three.js中使用挤出几何体创建的形状的每一侧应用不同的颜色
how to apply different colors to the each side of the shape created using extrude geometry in three.js
我使用挤出几何体创建了一个类似墙的形状,我需要为每一侧应用不同的颜色。我使用了以下设置
var extrusionSettings = {
curveSegments:5,
steps: 10,
amount: 200,
bevelEnabled: true,
bevelThickness: default_height,
bevelSize: 0,
bevelSegments: 8,
material: 0,
extrudeMaterial: 5
};
var geometry1 = new THREE.ExtrudeGeometry( shape1, extrusionSettings );
var materialLeft = new THREE.MeshLambertMaterial({
color: 0xd6d6d6,// cement
//transparent:true,
side: THREE.DoubleSide,
ambient: 0xd6d6d6
});
var materialRight = new THREE.MeshLambertMaterial({
color: 0xd6d6d6,//violet
//transparent:true,
side: THREE.DoubleSide,
ambient: 0xcc49c3
});
var materialTop = new THREE.MeshLambertMaterial({
color: 0x8649cc,//blue
//transparent:true,
side: THREE.DoubleSide,
ambient: 0x8649cc
});
var materialBottom = new THREE.MeshLambertMaterial({
color: 0x4ac4b6,// green
//transparent:true,
side: THREE.DoubleSide,
ambient: 0x4ac4b6
});
var materialFront = new THREE.MeshLambertMaterial({
color: 0x567E14,// dark green
//transparent:true,
side: THREE.DoubleSide,
ambient: 0x567E14
});
var materialSide = new THREE.MeshLambertMaterial({
color: 0xa8a843,// yellow
//transparent:true,
side: THREE.DoubleSide,
ambient: 0xa8a843
});
//var materials = [ materialFront, materialSide ];
var materials = [
materialLeft, // Left side
materialRight, // Right side
materialTop, // Top side
materialBottom,// Bottom side
materialFront, // Front side
materialSide, // Back side
];
var material = new THREE.MeshFaceMaterial( materials );
var mesh1 = new THREE.Mesh( geometry1, material );
通过使用material: 0,extrudeMaterial: 5
,它取材料阵列中0和5位置的材料,我需要阵列中的所有颜色都应该根据形状的侧面放置。
有人能给我指路吗?
for (var i = 0, l = geometry1.faces.length; i < l; i++) {
geometry1.faces[i].materialIndex = i % l;
}
相关文章:
- 为不同的SVG应用不同的颜色
- 对选定的排序项目应用不同的颜色
- 在表格中应用动态行颜色 Javascript/VBscript
- 获取动态背景颜色,使用 LESS 应用于单独的元素
- DC.js 应用过滤器后热图颜色范围未更新
- d3.js应用不适用于 JSON 的颜色范围
- EaseJS将颜色过滤器应用于位图
- 将不同的颜色应用于动态生成的 HTML 表行
- 将多种颜色应用于谷歌图表中的单个元素
- 如何将动态颜色应用于与 HTML 表不同的每一行
- 如何将颜色选择器添加到我的绘图应用
- 如何在绘图应用程序上单击颜色时播放声音
- 将预定义的颜色序列应用于元素的动态列表
- 单击输入字段将背景颜色应用于父项,并取消选择初始选择的单选按钮
- 为什么我的webGL应用程序在iPhone上查看时背景颜色不同
- 如何在three.js中使用挤出几何体创建的形状的每一侧应用不同的颜色
- 如何为第一次选择和第二次选择复选框应用不同的颜色
- 如何在谷歌地图API中应用不同颜色的重叠区域的圆
- -webkit点击未应用于区域标记的突出显示颜色
- 将HSL随机颜色应用于函数