通過將頂點(diǎn)屬性顯示為用于調(diào)試的顏色來使其可視化。
new DebugAppearance(options)
眾所周知的單位長度向量的分量,即normal
,tangent
和bitangent
,從[-1.0,1.0]縮放到(-1.0,1.0)。
Parameters:
options
(Object)
Name | Description |
---|---|
options.attributeName
String
|
要可視化的屬性的名稱。 |
options.perInstanceAttribute
Boolean
default false
|
用于確定此屬性是否為每個(gè)實(shí)例的幾何屬性的布爾值。 |
options.glslDatatype
String
default 'vec3'
|
屬性的glsl數(shù)據(jù)類型。支持的數(shù)據(jù)類型有float 、vec2 、vec3 和vec4 。
|
options.vertexShaderSource
String
|
可選的glsl頂點(diǎn)明暗器源覆蓋默認(rèn)的頂點(diǎn)明暗器。 |
options.fragmentShaderSource
String
|
可選的glsl fragment shader source覆蓋默認(rèn)的fragment shader。 |
options.renderState
RenderState
|
可選的渲染狀態(tài)以覆蓋默認(rèn)的渲染狀態(tài)。 |
Example
var primitive = new bmgl.Primitive({
geometryInstances : // ...
appearance : new bmgl.DebugAppearance({
attributeName : 'normal'
})
});
Throws
-
DeveloperError : options.glsldatatype必須是float、vec2、vec3或vec4。
Members
(readonly) attributeName : String
要可視化的屬性的名稱。
(readonly) closed : Boolean
當(dāng)
true
時(shí),幾何圖形應(yīng)關(guān)閉。
-
Default Value:
false
(readonly) fragmentShaderSource : String
片段明暗器的glsl源代碼。完整片段明暗器源是按照程序構(gòu)建的,考慮到
DebugAppearance#material
。使用DebugAppearance#getFragmentShaderSource
獲取完整源。
(readonly) glslDatatype : String
要可視化的屬性的glsl數(shù)據(jù)類型。
material : Material
此屬性是
Appearance
接口的一部分,但DebugAppearance
不使用,因?yàn)槭褂昧送耆远x的片段明暗器。
-
Default Value:
undefined
(readonly) renderState : Object
呈現(xiàn)幾何圖形時(shí)要使用的WebGL固定函數(shù)狀態(tài)。
translucent : Boolean
當(dāng)
true
時(shí),幾何體將顯示為半透明。
-
Default Value:
false
(readonly) vertexShaderSource : String
頂點(diǎn)明暗器的glsl源代碼。
Methods
getFragmentShaderSource() → {String}
返回完整的glsl片段明暗器源,對(duì)于
DebugAppearance
僅為DebugAppearance#fragmentShaderSource
。
創(chuàng)建渲染狀態(tài)。這不是最終的渲染狀態(tài)實(shí)例;相反,它可以包含與上下文中創(chuàng)建的渲染狀態(tài)相同的渲染狀態(tài)屬性的子集。
確定幾何圖形是否基于
DebugAppearance#translucent
半透明。