Section: Visualization Toolkit Rendering Classes
To create an instance of class vtkShader, simply invoke its constructor as follows
obj = vtkShader
obj
is an instance of the vtkShader class.
string = obj.GetClassName ()
int = obj.IsA (string name)
vtkShader = obj.NewInstance ()
vtkShader = obj.SafeDownCast (vtkObject o)
int = obj.Compile ()
- Called to compile the shader code.
The subclasses must only compile the code in this method.
Returns if the compile was successful.
Subclasses should compile the code only if it was not
already compiled.
obj.PassShaderVariables (vtkActor actor, vtkRenderer ren)
- Called to pass VTK actor/property/light values and other
Shader variables over to the shader. This is called by the ShaderProgram
during each render.
obj.Bind ()
- Called to unbind the shader. As with Bind(), this is only applicable
to Cg.
obj.Unbind ()
- Release any graphics resources that are being consumed by this actor.
The parameter window could be used to determine which graphic
resources to release.
obj.ReleaseGraphicsResources (vtkWindow )
- Get/Set the XMLShader representation for this shader.
A shader is not valid without a XMLShader.
obj.SetXMLShader (vtkXMLShader )
- Get/Set the XMLShader representation for this shader.
A shader is not valid without a XMLShader.
vtkXMLShader = obj.GetXMLShader ()
- Get/Set the XMLShader representation for this shader.
A shader is not valid without a XMLShader.
int = obj.HasShaderVariable (string name)
- Indicates if a variable by the given name exists.
obj.AddShaderVariable (string name, int num_of_elements, int values)
- Methods to add shader variables to this shader.
The shader variable type must match with that declared in
the Material xml, otherwise, the variable is not made available
to the shader.
obj.AddShaderVariable (string name, int num_of_elements, float values)
- Methods to add shader variables to this shader.
The shader variable type must match with that declared in
the Material xml, otherwise, the variable is not made available
to the shader.
obj.AddShaderVariable (string name, int num_of_elements, double values)
- Methods to add shader variables to this shader.
The shader variable type must match with that declared in
the Material xml, otherwise, the variable is not made available
to the shader.
int = obj.GetShaderVariableSize (string name)
- Get number of elements in a Shader variable. Return 0 if
failed to find the shader variable.
int = obj.GetShaderVariableType (string name)
- Returns the type of a Shader variable with the given name.
Return 0 on error.
int = obj.GetShaderVariable (string name, int values)
- Methods to get the value of shader variables with the given name.
Values must be at least the size of the shader variable (obtained
by GetShaderVariableSize(). Returns if the operation was successful.
int = obj.GetShaderVariable (string name, float values)
- Methods to get the value of shader variables with the given name.
Values must be at least the size of the shader variable (obtained
by GetShaderVariableSize(). Returns if the operation was successful.
int = obj.GetShaderVariable (string name, double values)
- Methods to get the value of shader variables with the given name.
Values must be at least the size of the shader variable (obtained
by GetShaderVariableSize(). Returns if the operation was successful.
int = obj.GetScope ()
- Returns the scope of the shader i.e. if it's a vertex or fragment shader.
(vtkXMLShader::SCOPE_VERTEX or vtkXMLShader::SCOPE_FRAGMENT).