 |
VTK
9.0.1
|
Go to the documentation of this file.
23 #ifndef vtkOpenGLRenderer_h
24 #define vtkOpenGLRenderer_h
27 #include "vtkRenderingOpenGL2Module.h"
130 vtkGetMacro(LightingComplexity,
int);
133 vtkGetMacro(LightingCount,
int);
187 friend class vtkOpenGLImageResliceMapper;
~vtkOpenGLRenderer() override
int GetDepthPeelingHigherLayer()
Is rendering at translucent geometry stage using depth peeling and rendering a layer other than the f...
std::string LightingDeclaration
precompute prefilter texture used in physically based rendering
void Clear(void) override
Clear the image to the background color.
Implement Depth Peeling for use within a framebuffer pass.
static bool HaveAppleQueryAllocationBug()
Indicate if this system is subject to the apple/NVIDIA bug that causes crashes in the driver when too...
vtkTexture * GetCurrentTexturedBackground()
Check and return the textured background for the current state If monocular or stereo left eye,...
vtkPBRLUTTexture * EnvMapLookupTable
vtkOpenGLFXAAFilter * FXAAFilter
FXAA is delegated to an instance of vtkOpenGLFXAAFilter.
vtkPBRLUTTexture * GetEnvMapLookupTable()
Get environment textures used for image based lighting.
int UpdateGeometry(vtkFrameBufferObjectBase *fbo=nullptr) override
Ask all props to update and draw any opaque and translucent geometry.
void DeviceRenderTranslucentPolygonalGeometry(vtkFrameBufferObjectBase *fbo=nullptr) override
Render translucent polygonal geometry.
bool IsDualDepthPeelingSupported()
Dual depth peeling may be disabled for certain runtime configurations.
void SetEnvironmentTexture(vtkTexture *texture, bool isSRGB=false) override
Overriden in order to connect the texture to the environment map textures.
abstract interface to OpenGL FBOs
vtkDepthPeelingPass * DepthPeelingPass
Depth peeling is delegated to an instance of vtkDepthPeelingPass.
Implement a shadow mapping render pass.
window superclass for vtkRenderWindow
void ReleaseGraphicsResources(vtkWindow *w) override
void UpdateLightingUniforms(vtkShaderProgram *prog)
vtkMTimeType LightingUpdateTime
bool HaveApplePrimitiveIdBug()
Indicate if this system is subject to the Apple/AMD bug of not having a working glPrimitiveId <rdar:/...
handles properties associated with a texture map
static vtkOpenGLRenderer * New()
vtkPBRPrefilterTexture * GetEnvMapPrefiltered()
precompute irradiance texture used in physically based rendering
Implement OIT rendering using average color.
The ShaderProgram uses one or more Shader objects.
a simple class to control print indentation
abstracts an OpenGL texture object.
int UpdateLights(void) override
Ask lights to load themselves into graphics pipeline.
Perform FXAA antialiasing on the current framebuffer.
OpenGL mapper for image slice display.
const char * GetLightingUniforms()
vtkPBRPrefilterTexture * EnvMapPrefiltered
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int DepthPeelingHigherLayer
vtkSmartPointer< vtkTransform > UserLightTransform
Optional user transform for lights.
abstract specification for renderers
void SetUserLightTransform(vtkTransform *transform)
Set the user light transform applied after the camera transform.
vtkTransform * GetUserLightTransform()
precompute BRDF look-up table texture used in physically based rendering
vtkOrderIndependentTranslucentPass * TranslucentPass
Fallback for transparency.
vtkPBRIrradianceTexture * GetEnvMapIrradiance()
vtkOpenGLState * GetState()
vtkPBRIrradianceTexture * EnvMapIrradiance
void DeviceRenderOpaqueGeometry(vtkFrameBufferObjectBase *fbo=nullptr) override
Overridden to support hidden line removal.
void DeviceRender(void) override
Concrete open gl render method.
void CheckCompilation(unsigned int fragmentShader)
Check the compilation status of some fragment shader source.
vtkShadowMapPass * ShadowMapPass
Shadows are delegated to an instance of vtkShadowMapPass.
vtkTypeUInt32 vtkMTimeType
Perform part of the rendering of a vtkRenderer.