26 #ifndef vtkOpenGLRenderer_h
27 #define vtkOpenGLRenderer_h
31 #include "vtkRenderingOpenGL2Module.h"
76 void Clear(
void)
override;
89 int GetDepthPeelingHigherLayer();
98 "Removed in 9.1.0 as this bug does not affect any macOS release that VTK supports")
99 bool HaveApplePrimitiveIdBug();
105 static
bool HaveAppleQueryAllocationBug();
112 bool IsDualDepthPeelingSupported();
120 const
char* GetLightingUniforms();
138 vtkGetMacro(LightingComplexity,
int);
141 vtkGetMacro(LightingCount,
int);
170 vtkSetMacro(UseSphericalHarmonics,
bool);
171 vtkGetMacro(UseSphericalHarmonics,
bool);
172 vtkBooleanMacro(UseSphericalHarmonics,
bool);
190 void CheckCompilation(
unsigned int fragmentShader);
209 friend class vtkOpenGLImageResliceMapper;
Implement Depth Peeling for use within a framebuffer pass.
#define VTK_DEPRECATED_IN_9_1_0(reason)
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
virtual int UpdateLights(void)
Ask all lights to load themselves into rendering pipeline.
dynamic, self-adjusting array of float
abstract specification for renderers
virtual void SetEnvironmentTexture(vtkTexture *texture, bool isSRGB=false)
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.
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.