#include <FCDEffect.h>
Inheritance diagram for FCDEffect:
Public Member Functions | |
FCDEffect (FCDocument *document) | |
Constructor: do not use directly. | |
virtual | ~FCDEffect () |
Destructor: do not use directly. | |
virtual Type | GetType () const |
Retrieves the type for this entity class. | |
size_t | GetProfileCount () const |
Retrieves the number of profiles contained within the effect. | |
FCDEffectProfile * | GetProfile (size_t index) |
Retrieves a profile contained within the effect. | |
const FCDEffectProfile * | GetProfile (size_t index) const |
See above. | |
FCDEffectProfileList & | GetProfiles () |
Retrieves the list of the profiles contained within the effect. | |
const FCDEffectProfileList & | GetProfiles () const |
See above. | |
FCDEffectProfile * | FindProfile (FUDaeProfileType::Type type) |
Retrieves the profile for a specific profile type. | |
const FCDEffectProfile * | FindProfile (FUDaeProfileType::Type type) const |
See above. | |
FCDEffectProfile * | FindProfileByTypeAndPlatform (FUDaeProfileType::Type type, string platform) |
Retrieves the profile for a specific profile type and platform. | |
const FCDEffectProfile * | FindProfileByTypeAndPlatform (FUDaeProfileType::Type type, string platform) const |
See above. | |
bool | HasProfile (FUDaeProfileType::Type type) const |
Retrieves whether the effect contains a profile of the given type. | |
FCDEffectProfile * | AddProfile (FUDaeProfileType::Type type) |
Creates a profile of the given type. | |
void | ReleaseProfile (FCDEffectProfile *profile) |
Releases the given effect profile. | |
FCDEffectParameterList * | GetParameters () |
Retrieves the list of common effect parameters declared at the effect level. | |
const FCDEffectParameterList * | GetParameters () const |
See above. | |
void | AddParameter (FCDEffectParameter *parameter) |
[INTERNAL] Inserts an existing parameter into the list of common effect parameters at this abstraction level. | |
FCDEffectParameter * | FindParameterBySemantic (const string &semantic) |
Retrieves a common effect parameter. | |
void | FindParametersBySemantic (const string &semantic, FCDEffectParameterList ¶meters) |
Retrieves a subset of the common effect parameter list. | |
void | FindParametersByReference (const string &reference, FCDEffectParameterList ¶meters) |
Retrieves a subset of the common effect parameter list. | |
FCDEffect * | Clone () |
Clones the effect object. | |
void | Flatten () |
[INTERNAL] Flattens the effect, pushing all the common effect parameters into to the effect technique level of abstraction. | |
virtual FUStatus | LoadFromXML (xmlNode *effectNode) |
[INTERNAL] Reads in the <effect> element from a given COLLADA XML tree node. | |
virtual xmlNode * | WriteToXML (xmlNode *parentNode) const |
[INTERNAL] Writes out the <effect> element to the given COLLADA XML tree node. | |
FCDEffectImageList & | GetImages () |
Retrieves the list of the images contained within the effect. | |
const FCDEffectImageList & | GetImages () const |
See above. |
A COLLADA effect is one of many abstraction level that defines how to render mesh polygon sets. It contains one or more rendering profile that the application can choose to support. In theory, all the rendering profiles should reach the same render output, using different rendering technologies.
An effect may also declare new general purpose parameters that are common to all the profiles.
|
Constructor: do not use directly. Instead use the FCDMaterialLibrary::AddEffect function.
|
|
Destructor: do not use directly. Instead use the FCDMaterialLibrary::ReleaseEffect function. |
|
[INTERNAL] Inserts an existing parameter into the list of common effect parameters at this abstraction level. This function is used during the flattening of a material.
|
|
Creates a profile of the given type. If a profile of this type already exists, it will be released, as a COLLADA effect should only contain one profile of each type.
|
|
Clones the effect object. Everything is cloned, including the effect parameter and their animations. You will need release the cloned effect directly, by deleting the pointer.
|
|
Retrieves a common effect parameter. Looks for the common effect parameter with the correct semantic, in order to bind or override its value. This function searches through the effect and the level of abstractions below.
|
|
Retrieves a subset of the common effect parameter list. Look for the effect parameter generators with the correct reference. This function searches through the effect and the level of abstractions below.
|
|
Retrieves a subset of the common effect parameter list. Look for the effect parameter generators with the correct semantic. This function searches through the effect and the level of abstractions below.
|
|
Retrieves the profile for a specific profile type. There should only be one profile of each type within an effect. This function allows you to retrieve the profile for a given type.
|
|
Retrieves the profile for a specific profile type and platform. There should only be one profile of each type within an effect. This function allows you to retrieve the profile for a given type.
|
|
[INTERNAL] Flattens the effect, pushing all the common effect parameters into to the effect technique level of abstraction. To correctly flatten a material, use the FCDMaterialInstance::FlattenMaterial function. |
|
Retrieves the list of the images contained within the effect.
|
|
Retrieves the list of common effect parameters declared at the effect level. According to the COLLADA 1.4 schema, you should expect only parameter generators at this abstraction level.
|
|
Retrieves a profile contained within the effect.
|
|
Retrieves the number of profiles contained within the effect.
|
|
Retrieves the list of the profiles contained within the effect.
|
|
Retrieves the type for this entity class. This function is a part of the FCDEntity interface.
Reimplemented from FCDEntity. |
|
Retrieves whether the effect contains a profile of the given type.
|
|
[INTERNAL] Reads in the <effect> element from a given COLLADA XML tree node.
Reimplemented from FCDEntity. |
|
Releases the given effect profile.
|
|
[INTERNAL] Writes out the <effect> element to the given COLLADA XML tree node.
Reimplemented from FCDEntity. |