#include <FCDEffectPassShader.h>
Inheritance diagram for FCDEffectPassShader:
Public Member Functions | |
FCDEffectPassShader (FCDocument *document, FCDEffectPass *parent) | |
Constructor: do not use directly. | |
virtual | ~FCDEffectPassShader () |
Destructor: do not use directly. | |
FCDEffectPass * | GetParent () |
Retrieves the effect pass that contains this shader. | |
const FCDEffectPass * | GetParent () const |
See above. | |
void | AffectsVertices () |
Sets this shader as affecting vertices. | |
void | AffectsFragments () |
Sets this shader as affecting fragments/pixels. | |
bool | IsFragmentShader () const |
Retrieves whether this shader affects fragments/pixels. | |
bool | IsVertexShader () const |
Retrieves whether this shader affects vertices. | |
FCDEffectPassBindList & | GetBindings () |
Retrieves the list of bindings for this shader. | |
const FCDEffectPassBindList & | GetBindings () const |
See above. | |
size_t | GetBindingCount () const |
Retrieves the number of bindings for this shader. | |
FCDEffectPassBind * | GetBinding (size_t index) |
Retrieves a binding contained in this shader. | |
const FCDEffectPassBind * | GetBinding (size_t index) const |
See above. | |
FCDEffectPassBind * | AddBinding () |
Adds a new binding to this shader. | |
void | ReleaseBinding (FCDEffectPassBind *binding) |
Releases a binding contained within this shader. | |
const fstring & | GetCompilerTarget () const |
Retrieves the compiler target information. | |
void | SetCompilerTarget (const fstring &_compilerTarget) |
Sets the compiler target information string. | |
const fstring & | GetCompilerOptions () const |
Retrieves the compiler option string. | |
void | SetCompilerOptions (const fstring &_compilerOptions) |
Sets the compiler option string. | |
const string & | GetName () const |
Retrieves the sub-id of the shader. | |
void | SetName (const string &_name) |
Sets the sub-id of the shader. | |
FCDEffectCode * | GetCode () |
Retrieves the code inclusion that contains the code for this shader. | |
const FCDEffectCode * | GetCode () const |
See above. | |
void | SetCode (FCDEffectCode *_code) |
Sets the code inclusion that contains the code for this shader. | |
FCDEffectPassShader * | Clone (FCDEffectPass *newParent) const |
[INTERNAL] Clones this shader. | |
FUStatus | LoadFromXML (xmlNode *shaderNode) |
[INTERNAL] Reads in the pass shader from a given COLLADA XML tree node. | |
xmlNode * | WriteToXML (xmlNode *parentNode) const |
[INTERNAL] Writes out the pass shader to the given COLLADA XML tree node. |
The shader abstraction level in ColladaFX is contained within the effect passes. There are two types of shaders: vertex shaders and fragment/pixel shaders. A COLLADA shader contains a list of bindings to attach the effect parameters to the shader input parameters.
The shader object also contains the compiler information necessary to build the shader: its code, the compiler target and the compiler options.
|
Constructor: do not use directly. Instead, use the FCDEffectPass::AddShader, FCDEffectPass::AddVertexShader or FCDEffectPass::AddFragmentShader functions.
|
|
Destructor: do not use directly. Instead, use the FCDEffectPass::ReleaseShader function. |
|
Adds a new binding to this shader.
|
|
Sets this shader as affecting fragments/pixels. This sets the stage of the shader to the fragment/pixel pipeline. |
|
Sets this shader as affecting vertices. This sets the stage of the shader to the vertex pipeline. |
|
[INTERNAL] Clones this shader. You must manually delete the clone.
|
|
Retrieves a binding contained in this shader.
|
|
Retrieves the number of bindings for this shader.
|
|
Retrieves the list of bindings for this shader.
|
|
Retrieves the code inclusion that contains the code for this shader.
|
|
Retrieves the compiler option string. The validity of this string depends on the type of the profile that contains this shader.
|
|
Retrieves the compiler target information. The validity of this string depends on the type of the profile that contains this shader.
|
|
Retrieves the sub-id of the shader.
|
|
Retrieves the effect pass that contains this shader.
|
|
Retrieves whether this shader affects fragments/pixels.
|
|
Retrieves whether this shader affects vertices.
|
|
[INTERNAL] Reads in the pass shader from a given COLLADA XML tree node.
|
|
Releases a binding contained within this shader.
|
|
Sets the code inclusion that contains the code for this shader.
|
|
Sets the compiler option string. The validity of this string depends on the type of the profile that contains this shader.
|
|
Sets the compiler target information string. The validity of this string depends on the type of the profile that contains this shader.
|
|
Sets the sub-id of the shader.
|
|
[INTERNAL] Writes out the pass shader to the given COLLADA XML tree node.
|