本章介绍一下javaFX 3D库中Material类。
Material类包含了一系列的渲染属性结合,下面是Material类的层次结构,PhongMaterial是Material的子类
java.lang.Object
javafx.scene.paint.Material (abstract)
javafx.scene.paint.PhongMaterial
PhongMaterial类定义了一些属性,代表了冯氏着色的一种形式。
漫射色
漫反射贴图
高光贴图
高光颜色
高光强度
凹凸贴图和正常贴图
自发光贴图
材料是多个Shape3D节点之间共享。下面是一个例子:
//Create Material
Material mat = new PhongMaterial();
Image diffuseMap = new Image("diffuseMap.png");
Image normalMap = new Image("normalMap.png");
// Set material properties
mat.setDiffuseMap(diffuseMap);
mat.setBumpMap(normalMap);
mat.setSpecularColor(Color.WHITE);
// Use the material for a shape
shape3d.setMaterial(mat);