1 #ifndef __DISTORTIONRENDERING_HH__
2 #define __DISTORTIONRENDERING_HH__
4 #include <bias_config.h>
6 #ifndef BIAS_HAVE_OPENGL
7 # error You need BIAS with USE_OpenGL Please recompile BIAS.
8 #endif // BUILD_GLviewer
10 #include <Gui/biasgl.h>
11 #include <Base/Debug/Debug.hh>
12 #include <GLviewer/Scenes/SceneBase.hh>
14 #if defined(BIAS_HAVE_GLEW)
16 #define BIAS_HAVE_CLASS_DISTORTIONRENDERING
20 #include <Geometry/ProjectionParametersPerspective.hh>
22 #include <OpenGLFramework/Base/glfTexture2D.hh>
23 #include <OpenGLFramework/Base/glfFramebufferObject.hh>
24 #include <OpenGLFramework/Base/glfShaderProgram.hh>
25 #include <OpenGLFramework/Base/glfBatch.hh>
26 #include <OpenGLFramework/Base/glfViewport.hh>
27 #include <OpenGLFramework/Base/glfDepthBufferMode.hh>
28 #include <OpenGLFramework/Base/glfRenderTarget.hh>
30 #include <OpenGLFramework/Passive/glfPassiveRenderTarget.hh>
31 #include <OpenGLFramework/Passive/glfPassiveDepthBufferMode.hh>
53 ClearColor_.Set((
float)r, (
float)g, (
float)b, 0.0f);
62 bool useStencil =
false);
68 int DrawScenes(std::vector<SceneBase*>& scenes,
69 bool& FirstRenderingPassFinished,
70 bool& informScenesOfChange,
73 bool useStencil =
false);
91 bool loadDistortionShaders_;
92 bool DistortionShadersInitialized_;
103 bool UseStencilBuffer_;
108 unsigned int NotDistortedImageWidth_, NotDistortedImageHeight_;
123 void SetupPrimitiveRendering_();
125 void SetQuadDataTexture_(
float* data);
128 DistortionRendering& operator=(
const DistortionRendering& d) {
return (*
this); };
136 #endif // __DISTORTIONRENDERING_HH__
An element buffer contains vertex indices that form primitives.
Defines the usage of the depth buffer.
camera parameters which define the mapping between rays in the camera coordinate system and pixels in...
This class allows to use the currently set RenderTarget in the global opengl state! ...
A vertex buffer contains an array of vertices that can be used for rendering.
void SetClearColor(double r, double g, double b)
A batch represents a single Draw call including all parameters (render states).
A shader program composed of several shaders.
A GLSL vertex shader or fragment shader, which must be linked in a shader program.
Utility class for distortion rendering used by GLProjection.
This class allows to use the currently set viewport in the global opengl state!
class for setting viewports
Interface for render targets.
void SetClearColor(const BIAS::Vector4< float > &cc)