14 #ifndef vtkOpenGLRenderer_h
15 #define vtkOpenGLRenderer_h
20 #include "vtkRenderingOpenGL2Module.h"
26 VTK_ABI_NAMESPACE_BEGIN
67 void Clear()
override;
80 int GetDepthPeelingHigherLayer();
86 static bool HaveAppleQueryAllocationBug();
93 bool IsDualDepthPeelingSupported();
101 const char* GetLightingUniforms();
119 vtkGetMacro(LightingComplexity,
int);
122 vtkGetMacro(LightingCount,
int);
151 vtkSetMacro(UseSphericalHarmonics,
bool);
152 vtkGetMacro(UseSphericalHarmonics,
bool);
153 vtkBooleanMacro(UseSphericalHarmonics,
bool);
171 void CheckCompilation(
unsigned int fragmentShader);
190 friend class vtkOpenGLImageResliceMapper;
247 VTK_ABI_NAMESPACE_END
Implement Depth Peeling for use within a framebuffer pass.
std::unique_ptr< vtkOpenGLQuadHelper > BackgroundRenderer
Implement a screen-space ambient occlusion pass.
virtual void ReleaseGraphicsResources(vtkWindow *)
vtkPBRIrradianceTexture * EnvMapIrradiance
vtkShadowMapPass * ShadowMapPass
Shadows are delegated to an instance of vtkShadowMapPass.
vtkTypeUInt32 vtkMTimeType
bool UseSphericalHarmonics
std::string LightingDeclaration
dynamic, self-adjusting array of float
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.
vtkSmartPointer< vtkFloatArray > SphericalHarmonics
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.
virtual int UpdateLights()
Ask all lights to load themselves into rendering pipeline.
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.
vtkSSAOPass * SSAOPass
SSAO is delegated to an instance of vtkSSAOPass.
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.