VTK  9.5.20251213
vtkSimpleMotionBlurPass.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
38
39#ifndef vtkSimpleMotionBlurPass_h
40#define vtkSimpleMotionBlurPass_h
41
43#include "vtkRenderingOpenGL2Module.h" // For export macro
44#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
45
46VTK_ABI_NAMESPACE_BEGIN
48class vtkOpenGLHelper;
51
52class VTKRENDERINGOPENGL2_EXPORT VTK_MARSHALAUTO vtkSimpleMotionBlurPass
54{
55public:
58 void PrintSelf(ostream& os, vtkIndent indent) override;
59
64 void Render(const vtkRenderState* s) override;
65
72
74
82 vtkGetMacro(SubFrames, int);
83 virtual void SetSubFrames(int subFrames);
85
90 vtkSetMacro(DepthFormat, int);
91
98 vtkSetMacro(ColorFormat, int);
99
100 // Get the depth texture object
101 vtkGetObjectMacro(DepthTexture, vtkTextureObject);
102
103 // Get the Color texture object
104 vtkGetObjectMacro(ColorTexture, vtkTextureObject);
105
106protected:
111
116
121 vtkTextureObject* ColorTexture; // render target for the scene
122 vtkTextureObject* AccumulationTexture[2]; // where we add the colors
123 vtkTextureObject* DepthTexture; // render target for the depth
124
126
134
137
138 int SubFrames; // number of sub frames
139 int CurrentSubFrame; // what one are we on
142
143private:
145 void operator=(const vtkSimpleMotionBlurPass&) = delete;
146};
147
148VTK_ABI_NAMESPACE_END
149#endif
vtkDepthImageProcessingPass()
Default constructor.
a simple class to control print indentation
Definition vtkIndent.h:108
Internal class which encapsulates OpenGL FramebufferObject.
OpenGL rendering window.
Context in which a vtkRenderPass will render.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int ViewportWidth
Cache viewport values for depth peeling.
void Render(const vtkRenderState *s) override
Perform rendering according to a render state s.
int ViewportY
Cache viewport values for depth peeling.
vtkTextureObject * AccumulationTexture[2]
virtual void SetSubFrames(int subFrames)
Set the number of sub frames for doing motion blur.
int ViewportX
Cache viewport values for depth peeling.
void ReleaseGraphicsResources(vtkWindow *w) override
Release graphics resources and ask components to release their own resources.
int ViewportHeight
Cache viewport values for depth peeling.
vtkOpenGLFramebufferObject * FrameBufferObject
Graphics resources.
vtkSimpleMotionBlurPass()
Default constructor.
~vtkSimpleMotionBlurPass() override
Destructor.
static vtkSimpleMotionBlurPass * New()
abstracts an OpenGL texture object.
window superclass for vtkRenderWindow
Definition vtkWindow.h:48
#define VTK_MARSHALAUTO