three.js的各种材质

three.js中的包含的材质的种类有很多,大体上有:

MeshBaseMaterial(网格基础材质)、MeshLamberMaterial(网格朗伯材质)、MeshPhongMaterial(网格Phong式材质)、ShaderMaterial(着色器材质)、LineBasicMaterial(直线基础材质)、LineDashedMaterial(虚线材质)、MeshDepthMaterial(网格深度材质)、MeshNormalMaterial(网格法向材质)、MeshFaceMaterial(网格面材质)



1.MeshBaseMaterial(网格基础材质)是一种非常简单的材质,这种材质不会考虑光照的影响。使用这种材质网格备渲染成简单的平面多边形,并且可以显示几何体的线框。


2.MeshDepthMaterial(网格深度材质)使用该材质的物体的外观不是由某个材质属性决定的,而是由物体到相机的距离决定的,离相机越近越亮,离相机越远越暗。该材质的属性很少,没有设置物体颜色的属性。如果想改变物体的颜色,就需要创建多材质的物体。


3.MeshNormalMaterial(网格法向材质)通过法向量来映射RGB颜色。每个法向量不同的面都会赋予不同的颜色。


4.MeshFaceMaterial(网格面材质)可以为几何体每一个面指定不同的材质。比如一个立方体有六个面你可以为每个面指定一个材质。


5.MeshLambertMaterial(网格朗伯材质)用于创建看上去暗淡的、不光亮的表面,可以对光源产生阴影的效果。


6.MeshPhongMaterial(网格phong式材质)用于创建光亮表面的材质。可以产生阴影的效果。


7.ShaderMaterial(着色器材质)该材质是最复杂的一种材质,可以使用自己定制的着色器。


你可能感兴趣的:(three.js)