ComposedShader
The ComposedShader node defines a shader where the individual source files are not individually programmable. All access to the shading capabilities is defined through a single interface that applies to all parts.
Inheritance
Code
XML encoding
<ComposedShader geometryInputType='auto' geometryOutputType='auto' geometryVerticesOut='0' logFeature='' language='auto' />
Classic encoding
ComposedShader { geometryInputType "auto" geometryOutputType "auto" geometryVerticesOut 0 logFeature [""] language "auto" }
Interface
Filter: X3D only | Avalon only | All
id | Name | DataType | PartType | Default | ValueType | Description |
---|---|---|---|---|---|---|
activate | SFBool | inputOnly | The activate field forces the shader to activate the contained objects. | |||
geometryInputType | SFString | inputOutput | auto | Defines input primitive type for geometry shader. | ||
geometryOutputType | SFString | inputOutput | auto | Defines output primitive type for geometry shader. | ||
geometryVerticesOut | SFInt32 | inputOutput | 0 | Sets maximum number of vertices to be generated by geometry shader, important for performance. | ||
isSelected | SFBool | outputOnly | The isSelected output field is used to indicate that this shader instance is the one selected for use by the browser. A TRUE value indicates that this instance is in use. | |||
isValid | SFBool | outputOnly | The isValid field is used to indicate whether the current shader objects can be run as a shader program. | |||
language | SFString | initializeOnly | auto | CG; GLSL; HLSL | Indicates to the browser which shading language is used for the source file(s). This field may be used as a hint for the browser if the shading language is not immediately determinable from the source. | |
logFeature | MFString | inputOutput | state, child, parent, route, eventIn, eventOut | controls the logging of changes, state: log state changes (e.g. live), child: log child add/remove, parent: log parent add/remove, route: log route add/remove; eventIn: log receiving of events, eventOut: log sending of events: guiView, runtime system should create node-view, guiEdit: runtime system should create node-editeverything: log everything | ||
metadata | SFNode | inputOutput | MetadataObject | container for payload metadata inside MetadataSet element | ||
parts | MFNode | inputOutput | ShaderPart | Contains the different shader parts that can be linked together to form a complete shader. |