threejs 材质

一、基本材质

THREE.MeshBasicMaterial(参数集);
visible:是否可见,默认为true
side:渲染面片正面或是反面,默认为正面THREE.FrontSide,可设置为反面THREE.BackSide,或双面THREE.DoubleSide
wireframe:是否渲染线而非面,默认为false
color:十六进制RGB颜色,如红色表示为0xff0000
opacity: 0.5
map:使用纹理贴图
...

二、Lambert材质

new THREE.MeshLambertMaterial(参数集);
color是用来表现材质对散射光的反射能力,也是最常用来设置材质颜色的属性。除此之外,还可以用ambient和emissive控制材质的颜色。

ambient表示对环境光的反射能力,只有当设置了AmbientLight后,该值才是有效的,材质对环境光的反射能力与环境光强相乘后得到材质实际表现的颜色。

emissive是材质的自发光颜色,可以用来表现光源的颜色。

例子:

new THREE.MeshLambertMaterial({
    color: 0xffff00,
    emissive: 0xff0000
})

三、Phong材质

new THREE.MeshPhongMaterial({
    color: 0xffff00
});

 

posted @ 2018-12-27 11:53  木章  阅读(571)  评论(0编辑  收藏  举报