|
virtual const char * | GetClassName () |
|
virtual int | IsA (const char *type) |
|
void | PrintSelf (ostream &os, vtkIndent indent) |
|
virtual int | Compile () |
|
unsigned int | GetHandle () |
|
|
virtual void | SetProgram (unsigned int) |
|
virtual unsigned int | GetProgram () |
|
virtual void | PassShaderVariables (vtkActor *actor, vtkRenderer *ren) |
|
virtual void | Bind () |
|
virtual void | Unbind () |
|
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 () |
|
|
int | IsShader () |
|
int | IsCompiled () |
|
void | LoadShader () |
|
virtual void | SetSamplerParameter (const char *name, vtkTexture *texture, int textureIndex) |
|
|
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 &) |
|
GLSL Shader.
vtkGLSLShader is a concrete class that creates and compiles hardware shaders written in the OpenGL Shadering Language (GLSL, OpenGL2.0). While step linking a vertex and a fragment shader is performed by vtkGLSLShaderProgram, all shader parameters are initialized in this class.
- vtkOpenGLExtensionManager:
- All OpenGL calls are made through vtkOpenGLExtensionManager.
- Supported Basic Shader Types::
- Scalar Types uniform float uniform int uniform int – boolean scalar not yet tested
- Supported Basic Shader Types::
- Vector Types: uniform vec{2|3|4} uniform ivec{2|3|4} uniform bvec{2|3|4} – boolean vector not yet tested
- Supported Basic Shader Types::
- Matrix Types: uniform mat{2|3|4}
- Supported Basic Shader Types::
- Texture Samplers: sample1D – Not yet implemented in this cless. sample2D – Not yet implemented in this class. sample3D – Not yet implemented in this class. sampler1DShadow – Not yet implemented in this class. sampler1DShadow – Not yet implemented in this class.
- Supported Basic Shader Types::
- User-Defined structures: uniform struct NOTE: these must be defined and declared outside of the 'main' shader function.
- Thanks:
- Shader support in VTK includes key contributions by Gary Templet at Sandia National Labs.
Definition at line 87 of file vtkGLSLShader.h.