23 #ifndef vtkOpenGLRenderer_h 24 #define vtkOpenGLRenderer_h 27 #include "vtkRenderingOpenGL2Module.h" 70 void Clear(
void)
override;
83 int GetDepthPeelingHigherLayer();
91 bool HaveApplePrimitiveIdBug();
97 static bool HaveAppleQueryAllocationBug();
104 bool IsDualDepthPeelingSupported();
112 const char* GetLightingUniforms();
130 vtkGetMacro(LightingComplexity,
int);
133 vtkGetMacro(LightingCount,
int);
168 void CheckCompilation(
unsigned int fragmentShader);
187 friend class vtkOpenGLImageResliceMapper;
Implement Depth Peeling for use within a framebuffer pass.
virtual void ReleaseGraphicsResources(vtkWindow *)
vtkPBRIrradianceTexture * EnvMapIrradiance
vtkShadowMapPass * ShadowMapPass
Shadows are delegated to an instance of vtkShadowMapPass.
vtkTypeUInt32 vtkMTimeType
std::string LightingDeclaration
virtual int UpdateLights(void)
Ask all lights to load themselves into rendering pipeline.
abstract specification for renderers
virtual void SetEnvironmentTexture(vtkTexture *texture, bool isSRGB=false)
Set/Get the environment texture used for image based lighting.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
OpenGL mapper for image slice display.
vtkPBRLUTTexture * EnvMapLookupTable
window superclass for vtkRenderWindow
vtkOpenGLFXAAFilter * FXAAFilter
FXAA is delegated to an instance of vtkOpenGLFXAAFilter.
int DepthPeelingHigherLayer
abstract interface to OpenGL FBOs
a simple class to control print indentation
precompute prefilter texture used in physically based rendering
vtkSmartPointer< vtkTransform > UserLightTransform
Optional user transform for lights.
handles properties associated with a texture map
vtkDepthPeelingPass * DepthPeelingPass
Depth peeling is delegated to an instance of vtkDepthPeelingPass.
virtual int UpdateGeometry(vtkFrameBufferObjectBase *fbo=nullptr)
Ask all props to update and draw any opaque and translucent geometry.
precompute BRDF look-up table texture used in physically based rendering
vtkMTimeType LightingUpdateTime
abstracts an OpenGL texture object.
vtkOrderIndependentTranslucentPass * TranslucentPass
Fallback for transparency.
virtual void DeviceRender()
Create an image.
virtual void DeviceRenderTranslucentPolygonalGeometry(vtkFrameBufferObjectBase *fbo=nullptr)
Render translucent polygonal geometry.
static vtkRenderer * New()
Create a vtkRenderer with a black background, a white ambient light, two-sided lighting turned on...
Implement a shadow mapping render pass.
Perform FXAA antialiasing on the current framebuffer.
Perform part of the rendering of a vtkRenderer.
vtkPBRPrefilterTexture * EnvMapPrefiltered
virtual void DeviceRenderOpaqueGeometry(vtkFrameBufferObjectBase *fbo=nullptr)
Render opaque polygonal geometry.
precompute irradiance texture used in physically based rendering
Implement OIT rendering using average color.
virtual void Clear()
Clear the image to the background color.
The ShaderProgram uses one or more Shader objects.