#include <OgreTechnique.h>
Public Types | |
typedef VectorIterator< Passes > | PassIterator |
typedef VectorIterator< IlluminationPassList > | IlluminationPassIterator |
Public Member Functions | |
Technique (Material *parent) | |
Constructor. | |
Technique (Material *parent, const Technique &oth) | |
Copy constructor. | |
~Technique () | |
bool | isSupported (void) const |
Indicates if this technique is supported by the current graphics card. | |
void | _compile (bool autoManageTextureUnits) |
Internal compilation method; see Material::compile. | |
void | _compileIlluminationPasses (void) |
Internal method for splitting the passes into illumination passes. | |
Pass * | createPass (void) |
Creates a new Pass for this Technique. | |
Pass * | getPass (unsigned short index) |
Retrieves the Pass with the given index. | |
unsigned short | getNumPasses (void) const |
Retrieves the number of passes. | |
void | removePass (unsigned short index) |
Removes the Pass with the given index. | |
void | removeAllPasses (void) |
Removes all Passes from this Technique. | |
const PassIterator | getPassIterator (void) |
Gets an iterator over the passes in this Technique. | |
const IlluminationPassIterator | getIlluminationPassIterator (void) |
Gets an iterator over the illumination-stage categorised passes. | |
Material * | getParent (void) const |
Gets the parent Material. | |
Technique & | operator= (const Technique &rhs) |
Overloaded operator to copy on Technique to another. | |
const String & | getResourceGroup (void) const |
Gets the resource group of the ultimate parent Material. | |
bool | isTransparent (void) const |
Returns true if this Technique involves transparency. | |
void | _load (void) |
Internal load method, derived from call to Material::load. | |
void | _unload (void) |
Internal unload method, derived from call to Material::unload. | |
bool | isLoaded (void) const |
void | _notifyNeedsRecompile (void) |
Tells the technique that it needs recompilation. | |
void | setAmbient (Real red, Real green, Real blue) |
Sets the ambient colour reflectance properties for every Pass in every Technique. | |
void | setAmbient (const ColourValue &ambient) |
Sets the ambient colour reflectance properties for every Pass in every Technique. | |
void | setDiffuse (Real red, Real green, Real blue, Real alpha) |
Sets the diffuse colour reflectance properties of every Pass in every Technique. | |
void | setDiffuse (const ColourValue &diffuse) |
Sets the diffuse colour reflectance properties of every Pass in every Technique. | |
void | setSpecular (Real red, Real green, Real blue, Real alpha) |
Sets the specular colour reflectance properties of every Pass in every Technique. | |
void | setSpecular (const ColourValue &specular) |
Sets the specular colour reflectance properties of every Pass in every Technique. | |
void | setShininess (Real val) |
Sets the shininess properties of every Pass in every Technique. | |
void | setSelfIllumination (Real red, Real green, Real blue) |
Sets the amount of self-illumination of every Pass in every Technique. | |
void | setSelfIllumination (const ColourValue &selfIllum) |
Sets the amount of self-illumination of every Pass in every Technique. | |
void | setDepthCheckEnabled (bool enabled) |
Sets whether or not each Pass renders with depth-buffer checking on or not. | |
void | setDepthWriteEnabled (bool enabled) |
Sets whether or not each Pass renders with depth-buffer writing on or not. | |
void | setDepthFunction (CompareFunction func) |
Sets the function used to compare depth values when depth checking is on. | |
void | setColourWriteEnabled (bool enabled) |
Sets whether or not colour buffer writing is enabled for each Pass. | |
void | setCullingMode (CullingMode mode) |
Sets the culling mode for each pass based on the 'vertex winding'. | |
void | setManualCullingMode (ManualCullingMode mode) |
Sets the manual culling mode, performed by CPU rather than hardware. | |
void | setLightingEnabled (bool enabled) |
Sets whether or not dynamic lighting is enabled for every Pass. | |
void | setShadingMode (ShadeOptions mode) |
Sets the type of light shading required. | |
void | setFog (bool overrideScene, FogMode mode=FOG_NONE, const ColourValue &colour=ColourValue::White, Real expDensity=0.001, Real linearStart=0.0, Real linearEnd=1.0) |
Sets the fogging mode applied to each pass. | |
void | setDepthBias (ushort bias) |
Sets the depth bias to be used for each Pass. | |
void | setTextureFiltering (TextureFilterOptions filterType) |
Set texture filtering for every texture unit in every Pass. | |
void | setTextureAnisotropy (unsigned int maxAniso) |
Sets the anisotropy level to be used for all textures. | |
void | setSceneBlending (const SceneBlendType sbt) |
Sets the kind of blending every pass has with the existing contents of the scene. | |
void | setSceneBlending (const SceneBlendFactor sourceFactor, const SceneBlendFactor destFactor) |
Allows very fine control of blending every Pass with the existing contents of the scene. | |
void | setLodIndex (unsigned short index) |
Assigns a level-of-detail (LOD) index to this Technique. | |
unsigned short | getLodIndex (void) const |
Gets the level-of-detail index assigned to this Technique. | |
bool | isDepthWriteEnabled (void) const |
Is depth writing going to occur on this technique? | |
bool | isDepthCheckEnabled (void) const |
Is depth checking going to occur on this technique? | |
Protected Types | |
typedef std::vector< Pass * > | Passes |
enum | IlluminationPassesState { IPS_COMPILE_DISABLED = -1, IPS_NOT_COMPILED = 0, IPS_COMPILED = 1 } |
Protected Member Functions | |
void | clearIlluminationPasses (void) |
Internal method for clearing illumination pass list. | |
Protected Attributes | |
Passes | mPasses |
List of primary passes. | |
IlluminationPassList | mIlluminationPasses |
List of derived passes, categorised into IlluminationStage (ordered). | |
Material * | mParent |
bool | mIsSupported |
IlluminationPassesState | mIlluminationPassesCompilationPhase |
unsigned short | mLodIndex |
Definition at line 41 of file OgreTechnique.h.
|
Definition at line 104 of file OgreTechnique.h. |
|
Definition at line 52 of file OgreTechnique.h. |
|
Definition at line 101 of file OgreTechnique.h. |
|
Definition at line 45 of file OgreTechnique.h. |
|
Constructor.
|
|
Copy constructor.
|
|
|
|
Internal compilation method; see Material::compile.
|
|
Internal method for splitting the passes into illumination passes.
|
|
Internal load method, derived from call to Material::load.
|
|
Tells the technique that it needs recompilation.
|
|
Internal unload method, derived from call to Material::unload.
|
|
Internal method for clearing illumination pass list.
|
|
Creates a new Pass for this Technique.
|
|
Gets an iterator over the illumination-stage categorised passes.
|
|
Gets the level-of-detail index assigned to this Technique.
Definition at line 394 of file OgreTechnique.h. |
|
Retrieves the number of passes.
|
|
Gets the parent Material.
Definition at line 108 of file OgreTechnique.h. |
|
Retrieves the Pass with the given index.
|
|
Gets an iterator over the passes in this Technique.
|
|
Gets the resource group of the ultimate parent Material.
|
|
Is depth checking going to occur on this technique?
|
|
Is depth writing going to occur on this technique?
|
|
|
|
Indicates if this technique is supported by the current graphics card.
|
|
Returns true if this Technique involves transparency.
|
|
Overloaded operator to copy on Technique to another.
|
|
Removes all Passes from this Technique.
|
|
Removes the Pass with the given index.
|
|
Sets the ambient colour reflectance properties for every Pass in every Technique.
|
|
Sets the ambient colour reflectance properties for every Pass in every Technique.
|
|
Sets whether or not colour buffer writing is enabled for each Pass.
|
|
Sets the culling mode for each pass based on the 'vertex winding'.
|
|
Sets the depth bias to be used for each Pass.
|
|
Sets whether or not each Pass renders with depth-buffer checking on or not.
|
|
Sets the function used to compare depth values when depth checking is on.
|
|
Sets whether or not each Pass renders with depth-buffer writing on or not.
|
|
Sets the diffuse colour reflectance properties of every Pass in every Technique.
|
|
Sets the diffuse colour reflectance properties of every Pass in every Technique.
|
|
Sets the fogging mode applied to each pass.
|
|
Sets whether or not dynamic lighting is enabled for every Pass.
|
|
Assigns a level-of-detail (LOD) index to this Technique.
|
|
Sets the manual culling mode, performed by CPU rather than hardware.
|
|
Allows very fine control of blending every Pass with the existing contents of the scene.
|
|
Sets the kind of blending every pass has with the existing contents of the scene.
|
|
Sets the amount of self-illumination of every Pass in every Technique.
|
|
Sets the amount of self-illumination of every Pass in every Technique.
|
|
Sets the type of light shading required.
|
|
Sets the shininess properties of every Pass in every Technique.
|
|
Sets the specular colour reflectance properties of every Pass in every Technique.
|
|
Sets the specular colour reflectance properties of every Pass in every Technique.
|
|
Sets the anisotropy level to be used for all textures.
|
|
Set texture filtering for every texture unit in every Pass.
|
|
List of derived passes, categorised into IlluminationStage (ordered).
Definition at line 56 of file OgreTechnique.h. |
|
Definition at line 59 of file OgreTechnique.h. |
|
Definition at line 58 of file OgreTechnique.h. |
|
Definition at line 60 of file OgreTechnique.h. |
|
Definition at line 57 of file OgreTechnique.h. |
|
List of primary passes.
Definition at line 54 of file OgreTechnique.h. |
Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Feb 12 13:04:25 2006