Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.8
-
None
Description
There are a couple issues with the use of interpolationMethod:
- The class defines Nearest as 0 (https://codebrowser.dev/qt6/qt3d/src/render/framegraph/qblitframebuffer.h.html#Qt3DRender::QBlitFramebuffer::Nearest), but the logic in https://codebrowser.dev/qt6/qt3d/src/plugins/renderers/opengl/graphicshelpers/submissioncontext.cpp.html#1611 inverts this, so that Nearest produces GL_LINEAR and Linear produces GL_NEAREST.
- https://codebrowser.dev/qt6/qt3d/src/plugins/renderers/opengl/graphicshelpers/submissioncontext.cpp.html#1614 unconditionally adds color/depth/stencil buffer bits. This is problematic when GL_LINEAR is used: "GL_INVALID_OPERATION is generated if mask contains any of the GL_DEPTH_BUFFER_BIT or GL_STENCIL_BUFFER_BIT and filter is not GL_NEAREST." (https://registry.khronos.org/OpenGL-Refpages/gl4/html/glBlitFramebuffer.xhtml)