Three.js開發指南(4):使用Three.js的材質

CopperDong發表於2018-04-22

      材質結合幾何體可以構成網格。材質就像是物體的皮膚,決定幾何體外表的樣子。可以決定一個幾何體看起來是否像金屬、透明與否,以及是否顯示成線框。



4.1 理解共有屬性

    材質基類,THREE.Material。

共有屬性分成了三類:

    基礎屬性:可以控制物體的透明度、是否可見或如何引用物體。

    融合屬性:決定物體如何與背景融合

    高階屬性:可以控制底層WebGL上下渲染物體的方法

4.2 從簡單的網格材質(基礎、深度和麵)開始

    簡單表面的MeshBasicMaterial

    基於深度著色的MeshDepthMaterial

    聯合材質

    計演算法向顏色的MeshNormalMaterial

    為每個面指定材質的MeshFaceMaterial

4.3 學習高階材質

     用於暗淡、不光亮表面的MeshLambertMaterial:

     用於光亮表面的MeshPhongMaterial:

     用ShaderMaterial建立自己的著色器:著色器不是用JavaScript編寫的。只能用類似C的GLSL語言來寫著色器。

4.4 線段幾何體的材質

     LineBasicMaterial:通過線段基礎材質可以設定線段的顏色、寬度、端點和連線點屬性。

     LineDashedMaterial:跟LineBasicMaterial的屬性一樣,但是通過指定短劃線和空格的長度,可以建立出虛線效果。


相關文章