用于控制 Primitive(图元)可视化效果类。通过定义 GLSL 着色器程序、材质属性和渲染状态实现几何体的着色与渲染。
Name | Type | Default | Description |
---|---|---|---|
options.translucent |
Boolean |
true
|
optional
当为true 时,表示几何体需呈现半透明效果,所以Appearance#renderState 启用了alpha混合。 |
options.closed |
Boolean |
false
|
optional
当为true 时,表示几何体应为闭合结构,因此Appearance#renderState 将启用背面剔除。 |
options.material |
Material |
Material.ColorType
|
optional 用于确定片段颜色的材质。 |
options.vertexShaderSource |
String | optional 可选的 GLSL 顶点着色器源代码,用于替换默认的顶点着色器实现。 | |
options.fragmentShaderSource |
String | optional 可选的 GLSL 片段着色器源代码,用于替换默认的片段着色器实现。 | |
options.renderState |
RenderState | optional 可选的呈现状态,替换默认呈现状态。 |
Members
-
当为true时,几何体应为闭合结构。
-
Default Value:
false
-
片段着色器的GLSL源代码。考虑到
Appearance#material
,完整的片段着色器源代码是按程序构建的。使用Appearance#getFragmentShaderSource
获取完整的源代码。 -
material : Material
-
用于确定片段颜色的材质。 与外观
Appearance
的其他属性不同,此属性非只读,因此外观的材质可实时动态修改。 -
在渲染几何体时使用的 WebGL 固定功能管线状态。
-
当
为true
时,几何体呈现半透明效果。-
Default Value:
true
-
顶点着色器的GLSL源代码。
Methods
-
通过程序化方式生成适用于该外观的完整 GLSL片段着色器源代码,此过程会综合考量
#fragmentShaderSource
和#material
的参数设置。Returns:
完整的GLSL片段着色器源代码。 -
创建一个渲染状态。此对象并非最终的渲染状态实例,而是可以包含与上下文中创建的渲染状态属性完全相同的子集。
Returns:
渲染状态。 -
根据
transparent
和Material#isTranslucent
确定几何体外观是否呈半透明效果。Returns:
若外观呈现半透明效果,则为 true。