(2)域值说明
- material:包含一个Material节点。
- texture:包含一个ImageTexture、MovieTexture或者PixelTexture节点。
- textureTransform:包含一个TextureTransform节点,如果texture域为NULL,则textureTransform域无效。
Appearance节点仅在Shape节点的appearance域中出现。该节点中所有域值均可为NULL。但是一旦某个域包含非零节点,则被包含节点必须包含一个上述相应类型的节点。如果material域是NULL,与Appearance相关的几何形体是无光亮的,也就是说在绘制这个几何形体时忽略所有光照;但是,如果material域包含一个缺省的材料节点,那么这个几何形体能用缺省的材料节点的值照亮。即在一个造型节点中指定appearance域为appearance Appearance{ },结果是没有光照;而若指定appearance域为appearance Appearance{ material Material{ }},光照将基于缺省材料值。
设置虚拟对象的材质
不同材料的物体外在的表现不同,如金属的物体反光,玻璃的制品透明等,这些特征可使用节点Material反映出来。
(1)语法说明
Material {
diffuseColor 0.8 # SFColor
ambientIntensify 0.2 # SFColor
specularColor 0 0 0 # SFColor
emissiveColor 0 0 0 # SFColor
shininess 0.2 # SFFloat
transparency 0 # SFFloat
}
(2)域值说明
- diffuseColor:指定漫反射颜色。物体表面相对于光源的角度,将决定它对来自光源的光的反射。表面越接近垂直于光源,被反射的漫射光线就越多。
- ambientIntensity:指明将有多少环境光被该表面反射。环境光是各向同性的,而且它仅依赖于光源的数目而不依赖于相对于表面的位置。环境光颜色以ambientlntensity的数值乘以diffuseColor的数值来计算。
- specularColor:指明物体镜面反射光的颜色。
- emissiveColor:指明一个发光物体产生的光的颜色。发射光的颜色在显示基于辐射度的模型(计算空间光能量的传递与分配)时,或者显示科学数据时非常有用。当所有其他的颜色为黑色(0 0 0)时,该颜色域被使用。
- shininess:指明物体表面的亮度,其值的范围从漫反射表面的0.0到高度抛光表面的1.0。
- transparency:指明物体的透明度,其值的范围从完全不透光表面的0.0到完全透光表。
暂无评论