mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-09-18 14:27:39 +03:00
0026711: Visualization, TKOpenGl - support creation of multisampling off-screen FBOs
OpenGl_Texture::Init2DMultisample() - new method to initialize multisampled texture. Graphic3d_RenderingParams::NbMsaaSamples - add option defining MSAA samples number. RayTracing will keep using FBO without MSAA, however it is possible to combine MSAA for rasterization and FSAA for RayTracing. OpenGl_FrameBuffer constructor has been changed to do not take arguments. OpenGl_FrameBuffer::Init() method has been extended with mandatory parameters defining Color and Depth attachment formats and optional parameter defining number of MSAA parameters. Draw Harness, add option -msaa to vrenderparams.
This commit is contained in:
@@ -545,7 +545,7 @@ private:
|
||||
OpenGl_VertexBuffer* initBlitQuad (const Standard_Boolean theToFlip);
|
||||
|
||||
//! Blend together views pair into stereo image.
|
||||
void drawStereoPair();
|
||||
void drawStereoPair (OpenGl_FrameBuffer* theDrawFbo);
|
||||
|
||||
protected:
|
||||
|
||||
@@ -599,6 +599,8 @@ protected: //! @name Rendering properties
|
||||
|
||||
//! Two framebuffers (left and right views) store cached main presentation
|
||||
//! of the view (without presentation of immediate layers).
|
||||
GLint myFboColorFormat; //!< sized format for color attachments
|
||||
GLint myFboDepthFormat; //!< sized format for depth-stencil attachments
|
||||
Handle(OpenGl_FrameBuffer) myMainSceneFbos[2];
|
||||
Handle(OpenGl_FrameBuffer) myImmediateSceneFbos[2]; //!< Additional buffers for immediate layer in stereo mode.
|
||||
OpenGl_VertexBuffer myFullScreenQuad; //!< Vertices for full-screen quad rendering.
|
||||
@@ -1034,6 +1036,7 @@ protected: //! @name fields related to ray-tracing
|
||||
Handle(OpenGl_FrameBuffer) myRaytraceFBO2[2];
|
||||
//! Framebuffer (FBO) for preliminary OpenGL output.
|
||||
Handle(OpenGl_FrameBuffer) myOpenGlFBO;
|
||||
Handle(OpenGl_FrameBuffer) myOpenGlFBO2;
|
||||
|
||||
//! Vertex buffer (VBO) for drawing dummy quad.
|
||||
OpenGl_VertexBuffer myRaytraceScreenQuad;
|
||||
|
Reference in New Issue
Block a user