InlineShader (interface)¶
バージョン 1.12.0 で追加.
The InlineShader is an interface representing a single shader for an InlineDrawing. For a code example please see the OGLInlineShader.
Functions¶
Boolean | clear ! () |
defineAttribute ! ( in String name, in String attributeType ) | |
defineUniform ! ( in InlineUniform uniform ) | |
Size | getAttributeCount ? () |
Integer | getAttributeID ? ( in String name ) |
String | getAttributeName ? ( in Index index ) |
InlineMaterial | getMaterial ? ( in Index index ) |
Size | getMaterialCount ? () |
String | getName ? () |
InlineMaterial | getOrCreateMaterial ! ( in String name ) |
Boolean | hasAttribute ? ( in String name ) |
Boolean | hasMaterial ? ( in String name ) |
Boolean | hasUniform ? ( in String name ) |
Boolean | removeMaterial ! ( in String name ) |
setUniform ! ( in InlineUniform uniform ) |
Functions in detail¶
Boolean InlineShader.clear! ()
clears all of the materials
InlineShader.defineAttribute! ( in String name, in String attributeType )
define a surface attribute with a given name and type
InlineShader.defineUniform! ( in InlineUniform uniform )
define a new uniform on the shader.
Size InlineShader.getAttributeCount? ()
returns the number of attributes
Integer InlineShader.getAttributeID? ( in String name )
returns the ID / location of a given attribute inside the shader. for OpenGL this is the program attribute id, for example.
String InlineShader.getAttributeName? ( in Index index )
returns the name of an attribute
InlineMaterial InlineShader.getMaterial? ( in Index index )
returns an existing material by index
Size InlineShader.getMaterialCount? ()
returns the number of materials in this shader
String InlineShader.getName? ()
returns the name of the shader
InlineMaterial InlineShader.getOrCreateMaterial! ( in String name )
returns (and eventually creates) a new matching material with a given name
Boolean InlineShader.hasAttribute? ( in String name )
returns true if this shader has an attribute with a given name
Boolean InlineShader.hasMaterial? ( in String name )
returns true if this shader has a material with a given name
Boolean InlineShader.hasUniform? ( in String name )
returns true if this shader has a uniform with a given name
Boolean InlineShader.removeMaterial! ( in String name )
removes the material a given name. returns true if it success, false otherwise.
InlineShader.setUniform! ( in InlineUniform uniform )
sets the global value of a uniform this can be changed per material, per instance or even per transform