Public Member Functions |
| virtual const char * | GetClassName () |
| virtual int | IsA (const char *type) |
| void | PrintSelf (ostream &os, vtkIndent indent) |
| virtual int | Compile () |
| virtual void | Bind () |
| virtual void | Unbind () |
| void | ReportError () |
| void | ReleaseGraphicsResources (vtkWindow *) |
| int | HasShaderVariable (const char *name) |
| int | GetShaderVariableSize (const char *name) |
| int | GetShaderVariableType (const char *name) |
| void | SetXMLShader (vtkXMLShader *) |
| virtual vtkXMLShader * | GetXMLShader () |
| void | AddShaderVariable (const char *name, int num_of_elements, const int *values) |
| void | AddShaderVariable (const char *name, int num_of_elements, const float *values) |
| void | AddShaderVariable (const char *name, int num_of_elements, const double *values) |
| int | GetShaderVariable (const char *name, int *values) |
| int | GetShaderVariable (const char *name, float *values) |
| int | GetShaderVariable (const char *name, double *values) |
| int | GetScope () |
| virtual void | DebugOn () |
| virtual void | DebugOff () |
| unsigned char | GetDebug () |
| void | SetDebug (unsigned char debugFlag) |
| virtual void | Modified () |
| virtual unsigned long | GetMTime () |
| unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
| vtkCommand * | GetCommand (unsigned long tag) |
| void | RemoveObserver (vtkCommand *) |
| void | RemoveObservers (unsigned long event, vtkCommand *) |
| void | RemoveObservers (const char *event, vtkCommand *) |
| int | HasObserver (unsigned long event, vtkCommand *) |
| int | HasObserver (const char *event, vtkCommand *) |
| void | RemoveObserver (unsigned long tag) |
| void | RemoveObservers (unsigned long event) |
| void | RemoveObservers (const char *event) |
| void | RemoveAllObservers () |
| int | HasObserver (unsigned long event) |
| int | HasObserver (const char *event) |
| template<class U , class T > |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
| template<class U , class T > |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| int | InvokeEvent (unsigned long event, void *callData) |
| int | InvokeEvent (const char *event, void *callData) |
| int | InvokeEvent (unsigned long event) |
| int | InvokeEvent (const char *event) |
| const char * | GetClassName () const |
| virtual void | Delete () |
| virtual void | FastDelete () |
| void | Print (ostream &os) |
| virtual void | Register (vtkObjectBase *o) |
| virtual void | UnRegister (vtkObjectBase *o) |
| void | SetReferenceCount (int) |
| void | PrintRevisions (ostream &os) |
| virtual void | PrintHeader (ostream &os, vtkIndent indent) |
| virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
| int | GetReferenceCount () |
Protected Member Functions |
| virtual void | SetSamplerParameter (const char *name, vtkTexture *texture, int) |
|
| virtual void | SetUniformParameter (const char *name, int numValues, const int *value) |
| virtual void | SetUniformParameter (const char *name, int numValues, const float *value) |
| virtual void | SetUniformParameter (const char *name, int numValues, const double *value) |
|
| virtual void | SetMatrixParameter (const char *name, int numValues, int order, const float *value) |
| virtual void | SetMatrixParameter (const char *name, int numValues, int order, const double *value) |
| virtual void | SetMatrixParameter (const char *name, const char *state_matix_type, const char *transform_type) |
| void | SetUniformParameter (vtkActor *, vtkRenderer *, vtkXMLDataElement *) |
| void | SetCameraParameter (vtkActor *, vtkRenderer *, vtkXMLDataElement *) |
| void | SetPropertyParameter (vtkActor *, vtkRenderer *, vtkXMLDataElement *) |
| void | SetLightParameter (vtkActor *, vtkRenderer *, vtkXMLDataElement *) |
| void | SetMatrixParameter (vtkActor *, vtkRenderer *, vtkXMLDataElement *) |
| void | SetSamplerParameter (vtkActor *, vtkRenderer *, vtkXMLDataElement *) |
| void | SetApplicationParameter (vtkXMLDataElement *) |
| virtual void | SetShaderParameters (vtkActor *, vtkRenderer *, vtkXMLDataElement *) |
| | vtkShader () |
| | ~vtkShader () |
| | vtkObject () |
| virtual | ~vtkObject () |
| virtual void | RegisterInternal (vtkObjectBase *, int check) |
| virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
| void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
| void | InternalReleaseFocus () |
| | vtkObjectBase () |
| virtual | ~vtkObjectBase () |
| virtual void | CollectRevisions (ostream &os) |
| virtual void | ReportReferences (vtkGarbageCollector *) |
| | vtkObjectBase (const vtkObjectBase &) |
| void | operator= (const vtkObjectBase &) |
Cg Shader.
vtkCgShader is the only class that interfaces directly with the Cg libraries. Once is has a valid shader described by a vtkXMLDataElement it will create, compile, install, and initialize the parameters of a Cg hardware shader.
- Supported Shader Types::
- Basic Types: uniform float uniform double
- Supported Shader Types::
- Vector Types: uniform float{1|2|3|4} uniform double{1|2|3|4}
- Supported Shader Types::
- Matrix Types: uniform float{1|2|3|4}x{1|2|3|4} uniform double{1|2|3|4}x{1|2|3|4}
- Supported Shader Types::
- NOTE: In the above, 'double' and 'float' refer to the application's representation, the hardware shader must define all of the above types as 'uniform float'.
- Supported Shader Types::
- State Matrix Parameters: uniform float4x4 with the following Cg-defined settings: CG_GL_MATRIX_IDENTITY CG_GL_MATRIX_TRANSPOSE CG_GL_MATRIX_INVERSE CG_GL_MATRIX_INVERSE_TRANSPOSE CG_GL_MODELVIEW_MATRIX CG_GL_PROJECTION_MATRIX CG_GL_TEXTURE_MATRIX CG_GL_MODELVIEW_PROJECTION_MATRIX
- Supported Shader Types::
- Texture Samplers: sample1D - Not tested sample2D sample3D - Not supported by VTK sampleRECT - Not supported by VTK sampleCUBE - Not supported by VTK
- Supported Shader Types::
- User-Defined: uniform struct
- Supported Shader Types::
- VTK-Specific Hardware Data Structures: vtkProperty vtkLight vtkCamera See vtkSNL/Rendering/Shaders/vtkProperty.cg See vtkSNL/Rendering/Shaders/vtkLight.cg See vtkSNL/Rendering/Shaders/vtkCamera.cg
- Thanks:
- Shader support in VTK includes key contributions by Gary Templet at Sandia National Labs.
Definition at line 106 of file vtkCgShader.h.