23 #ifndef vtkOpenGLProperty_h
24 #define vtkOpenGLProperty_h
26 #include "vtkRenderingOpenGLModule.h"
108 double ambient,
const double ambient_color[3],
109 double diffuse,
const double diffuse_color[3],
110 double specular,
const double specular_color[3],
double specular_power,
129 bool using_shader_program2);
represents an object (geometry & properties) in a rendered scene
adapter to pass generic vertex attributes to the rendering pipeline to be used in a vtkShaderProgram2...
a simple class to control print indentation
void BackfaceRender(vtkActor *a, vtkRenderer *ren)
Implement base class method.
void Render(vtkActor *a, vtkRenderer *ren)
Implement base class method.
virtual void AddShaderVariable(const char *name, int numVars, int *x)
Provide values to initialize shader variables.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetPropProgram(vtkShaderProgram2 *)
vtkShaderProgram2 * CurrentShaderProgram2
vtkShaderProgram2 * LastPropProgram
vtkShader2 * DefaultMainVS
vtkShader2 * DefaultPropVS
static vtkOpenGLProperty * New()
vtkShaderProgram2 * PropProgram
virtual void AddShaderVariable(const char *name, int numVars, double *x)
vtkShaderProgram2 * CachedShaderProgram2
virtual void PostRender(vtkActor *a, vtkRenderer *r)
This method is called after the actor has been rendered.
virtual void AddShaderVariable(const char *name, int numVars, float *x)
vtkShaderProgram2 * LastRendererShaderProgram2
bool RenderTextures(vtkActor *actor, vtkRenderer *renderer, bool using_shader_program2)
Method called in vtkOpenGLProperty::Render() to render textures.
vtkShader2 * DefaultPropFS
vtkGLSLShaderDeviceAdapter2 * ShaderDeviceAdapter2
bool RenderShaders(vtkActor *actor, vtkRenderer *renderer)
Method called in vtkOpenGLProperty::Render() to render shaders and/or related entities like shader va...
virtual vtkShaderDeviceAdapter2 * GetShaderDeviceAdapter2()
Get the object that can pass vertex attribute to a vtkShaderProgram2.
vtkShader2 * DefaultMainFS
virtual void ReleaseGraphicsResources(vtkWindow *win)
Release any graphics resources that are being consumed by this property.
void LoadMultiTexturingExtensions(vtkRenderer *ren)
Load OpenGL extensions for multi texturing.
static void SetMaterialProperties(unsigned int face, double ambient, const double ambient_color[3], double diffuse, const double diffuse_color[3], double specular, const double specular_color[3], double specular_power, double opacity, vtkOpenGLRenderWindow *context)
Helper method to set OpenGL material properties.
represent surface properties of a geometric object
abstract specification for renderers
a list of Shader2 objects.
an adapter to pass generic vertex attributes to the rendering pipeline.
window superclass for vtkRenderWindow