mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-08-29 12:58:03 +00:00
Merge branch 'main' into feature/h2c_support_clean_fixes
This commit is contained in:
@@ -1,11 +1,11 @@
|
|||||||
/**
|
/**
|
||||||
* Loader generated by glad 2.0.8 on Tue Apr 7 00:45:10 2026
|
* Loader generated by glad 2.0.8 on Thu Jul 16 03:42:05 2026
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: (WTFPL OR CC0-1.0) AND Apache-2.0
|
* SPDX-License-Identifier: (WTFPL OR CC0-1.0) AND Apache-2.0
|
||||||
*
|
*
|
||||||
* Generator: C/C++
|
* Generator: C/C++
|
||||||
* Specification: gl
|
* Specification: gl
|
||||||
* Extensions: 5
|
* Extensions: 7
|
||||||
*
|
*
|
||||||
* APIs:
|
* APIs:
|
||||||
* - gl:compatibility=4.6
|
* - gl:compatibility=4.6
|
||||||
@@ -19,10 +19,10 @@
|
|||||||
* - ON_DEMAND = False
|
* - ON_DEMAND = False
|
||||||
*
|
*
|
||||||
* Commandline:
|
* Commandline:
|
||||||
* --api='gl:compatibility=4.6' --extensions='GL_ARB_compatibility,GL_ARB_framebuffer_object,GL_EXT_framebuffer_object,GL_EXT_texture_compression_s3tc,GL_EXT_texture_filter_anisotropic' c --loader
|
* --api='gl:compatibility=4.6' --extensions='GL_ARB_compatibility,GL_ARB_framebuffer_object,GL_EXT_framebuffer_blit,GL_EXT_framebuffer_multisample,GL_EXT_framebuffer_object,GL_EXT_texture_compression_s3tc,GL_EXT_texture_filter_anisotropic' c --loader
|
||||||
*
|
*
|
||||||
* Online:
|
* Online:
|
||||||
* http://glad.sh/#api=gl%3Acompatibility%3D4.6&extensions=GL_ARB_compatibility%2CGL_ARB_framebuffer_object%2CGL_EXT_framebuffer_object%2CGL_EXT_texture_compression_s3tc%2CGL_EXT_texture_filter_anisotropic&generator=c&options=LOADER
|
* http://glad.sh/#api=gl%3Acompatibility%3D4.6&extensions=GL_ARB_compatibility%2CGL_ARB_framebuffer_object%2CGL_EXT_framebuffer_blit%2CGL_EXT_framebuffer_multisample%2CGL_EXT_framebuffer_object%2CGL_EXT_texture_compression_s3tc%2CGL_EXT_texture_filter_anisotropic&generator=c&options=LOADER
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -616,6 +616,8 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
|||||||
#define GL_DRAW_BUFFER9 0x882E
|
#define GL_DRAW_BUFFER9 0x882E
|
||||||
#define GL_DRAW_FRAMEBUFFER 0x8CA9
|
#define GL_DRAW_FRAMEBUFFER 0x8CA9
|
||||||
#define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6
|
#define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6
|
||||||
|
#define GL_DRAW_FRAMEBUFFER_BINDING_EXT 0x8CA6
|
||||||
|
#define GL_DRAW_FRAMEBUFFER_EXT 0x8CA9
|
||||||
#define GL_DRAW_INDIRECT_BUFFER 0x8F3F
|
#define GL_DRAW_INDIRECT_BUFFER 0x8F3F
|
||||||
#define GL_DRAW_INDIRECT_BUFFER_BINDING 0x8F43
|
#define GL_DRAW_INDIRECT_BUFFER_BINDING 0x8F43
|
||||||
#define GL_DRAW_PIXEL_TOKEN 0x0705
|
#define GL_DRAW_PIXEL_TOKEN 0x0705
|
||||||
@@ -746,6 +748,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
|||||||
#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
|
#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7
|
||||||
#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7
|
#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT 0x8CD7
|
||||||
#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
|
#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56
|
||||||
|
#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
|
||||||
#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC
|
#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC
|
||||||
#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC
|
#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT 0x8CDC
|
||||||
#define GL_FRAMEBUFFER_RENDERABLE 0x8289
|
#define GL_FRAMEBUFFER_RENDERABLE 0x8289
|
||||||
@@ -1106,6 +1109,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
|||||||
#define GL_MAX_RENDERBUFFER_SIZE 0x84E8
|
#define GL_MAX_RENDERBUFFER_SIZE 0x84E8
|
||||||
#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8
|
#define GL_MAX_RENDERBUFFER_SIZE_EXT 0x84E8
|
||||||
#define GL_MAX_SAMPLES 0x8D57
|
#define GL_MAX_SAMPLES 0x8D57
|
||||||
|
#define GL_MAX_SAMPLES_EXT 0x8D57
|
||||||
#define GL_MAX_SAMPLE_MASK_WORDS 0x8E59
|
#define GL_MAX_SAMPLE_MASK_WORDS 0x8E59
|
||||||
#define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111
|
#define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111
|
||||||
#define GL_MAX_SHADER_STORAGE_BLOCK_SIZE 0x90DE
|
#define GL_MAX_SHADER_STORAGE_BLOCK_SIZE 0x90DE
|
||||||
@@ -1400,6 +1404,8 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
|||||||
#define GL_READ_BUFFER 0x0C02
|
#define GL_READ_BUFFER 0x0C02
|
||||||
#define GL_READ_FRAMEBUFFER 0x8CA8
|
#define GL_READ_FRAMEBUFFER 0x8CA8
|
||||||
#define GL_READ_FRAMEBUFFER_BINDING 0x8CAA
|
#define GL_READ_FRAMEBUFFER_BINDING 0x8CAA
|
||||||
|
#define GL_READ_FRAMEBUFFER_BINDING_EXT 0x8CAA
|
||||||
|
#define GL_READ_FRAMEBUFFER_EXT 0x8CA8
|
||||||
#define GL_READ_ONLY 0x88B8
|
#define GL_READ_ONLY 0x88B8
|
||||||
#define GL_READ_PIXELS 0x828C
|
#define GL_READ_PIXELS 0x828C
|
||||||
#define GL_READ_PIXELS_FORMAT 0x828D
|
#define GL_READ_PIXELS_FORMAT 0x828D
|
||||||
@@ -1437,6 +1443,7 @@ typedef void (*GLADpostcallback)(void *ret, const char *name, GLADapiproc apipro
|
|||||||
#define GL_RENDERBUFFER_RED_SIZE 0x8D50
|
#define GL_RENDERBUFFER_RED_SIZE 0x8D50
|
||||||
#define GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50
|
#define GL_RENDERBUFFER_RED_SIZE_EXT 0x8D50
|
||||||
#define GL_RENDERBUFFER_SAMPLES 0x8CAB
|
#define GL_RENDERBUFFER_SAMPLES 0x8CAB
|
||||||
|
#define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
|
||||||
#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
|
#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55
|
||||||
#define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55
|
#define GL_RENDERBUFFER_STENCIL_SIZE_EXT 0x8D55
|
||||||
#define GL_RENDERBUFFER_WIDTH 0x8D42
|
#define GL_RENDERBUFFER_WIDTH 0x8D42
|
||||||
@@ -2150,6 +2157,10 @@ GLAD_API_CALL int GLAD_GL_VERSION_4_6;
|
|||||||
GLAD_API_CALL int GLAD_GL_ARB_compatibility;
|
GLAD_API_CALL int GLAD_GL_ARB_compatibility;
|
||||||
#define GL_ARB_framebuffer_object 1
|
#define GL_ARB_framebuffer_object 1
|
||||||
GLAD_API_CALL int GLAD_GL_ARB_framebuffer_object;
|
GLAD_API_CALL int GLAD_GL_ARB_framebuffer_object;
|
||||||
|
#define GL_EXT_framebuffer_blit 1
|
||||||
|
GLAD_API_CALL int GLAD_GL_EXT_framebuffer_blit;
|
||||||
|
#define GL_EXT_framebuffer_multisample 1
|
||||||
|
GLAD_API_CALL int GLAD_GL_EXT_framebuffer_multisample;
|
||||||
#define GL_EXT_framebuffer_object 1
|
#define GL_EXT_framebuffer_object 1
|
||||||
GLAD_API_CALL int GLAD_GL_EXT_framebuffer_object;
|
GLAD_API_CALL int GLAD_GL_EXT_framebuffer_object;
|
||||||
#define GL_EXT_texture_compression_s3tc 1
|
#define GL_EXT_texture_compression_s3tc 1
|
||||||
@@ -2205,6 +2216,7 @@ typedef void (GLAD_API_PTR *PFNGLBLENDFUNCSEPARATEPROC)(GLenum sfactorRGB, GLenu
|
|||||||
typedef void (GLAD_API_PTR *PFNGLBLENDFUNCSEPARATEIPROC)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
|
typedef void (GLAD_API_PTR *PFNGLBLENDFUNCSEPARATEIPROC)(GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
|
||||||
typedef void (GLAD_API_PTR *PFNGLBLENDFUNCIPROC)(GLuint buf, GLenum src, GLenum dst);
|
typedef void (GLAD_API_PTR *PFNGLBLENDFUNCIPROC)(GLuint buf, GLenum src, GLenum dst);
|
||||||
typedef void (GLAD_API_PTR *PFNGLBLITFRAMEBUFFERPROC)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
typedef void (GLAD_API_PTR *PFNGLBLITFRAMEBUFFERPROC)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
||||||
|
typedef void (GLAD_API_PTR *PFNGLBLITFRAMEBUFFEREXTPROC)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
||||||
typedef void (GLAD_API_PTR *PFNGLBLITNAMEDFRAMEBUFFERPROC)(GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
typedef void (GLAD_API_PTR *PFNGLBLITNAMEDFRAMEBUFFERPROC)(GLuint readFramebuffer, GLuint drawFramebuffer, GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
|
||||||
typedef void (GLAD_API_PTR *PFNGLBUFFERDATAPROC)(GLenum target, GLsizeiptr size, const void * data, GLenum usage);
|
typedef void (GLAD_API_PTR *PFNGLBUFFERDATAPROC)(GLenum target, GLsizeiptr size, const void * data, GLenum usage);
|
||||||
typedef void (GLAD_API_PTR *PFNGLBUFFERSTORAGEPROC)(GLenum target, GLsizeiptr size, const void * data, GLbitfield flags);
|
typedef void (GLAD_API_PTR *PFNGLBUFFERSTORAGEPROC)(GLenum target, GLsizeiptr size, const void * data, GLbitfield flags);
|
||||||
@@ -2881,6 +2893,7 @@ typedef GLint (GLAD_API_PTR *PFNGLRENDERMODEPROC)(GLenum mode);
|
|||||||
typedef void (GLAD_API_PTR *PFNGLRENDERBUFFERSTORAGEPROC)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
|
typedef void (GLAD_API_PTR *PFNGLRENDERBUFFERSTORAGEPROC)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
|
||||||
typedef void (GLAD_API_PTR *PFNGLRENDERBUFFERSTORAGEEXTPROC)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
|
typedef void (GLAD_API_PTR *PFNGLRENDERBUFFERSTORAGEEXTPROC)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
|
||||||
typedef void (GLAD_API_PTR *PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
|
typedef void (GLAD_API_PTR *PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
|
||||||
|
typedef void (GLAD_API_PTR *PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
|
||||||
typedef void (GLAD_API_PTR *PFNGLRESUMETRANSFORMFEEDBACKPROC)(void);
|
typedef void (GLAD_API_PTR *PFNGLRESUMETRANSFORMFEEDBACKPROC)(void);
|
||||||
typedef void (GLAD_API_PTR *PFNGLROTATEDPROC)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
|
typedef void (GLAD_API_PTR *PFNGLROTATEDPROC)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
|
||||||
typedef void (GLAD_API_PTR *PFNGLROTATEFPROC)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
|
typedef void (GLAD_API_PTR *PFNGLROTATEFPROC)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
|
||||||
@@ -3318,6 +3331,8 @@ GLAD_API_CALL PFNGLBLENDFUNCIPROC glad_glBlendFunci;
|
|||||||
#define glBlendFunci glad_glBlendFunci
|
#define glBlendFunci glad_glBlendFunci
|
||||||
GLAD_API_CALL PFNGLBLITFRAMEBUFFERPROC glad_glBlitFramebuffer;
|
GLAD_API_CALL PFNGLBLITFRAMEBUFFERPROC glad_glBlitFramebuffer;
|
||||||
#define glBlitFramebuffer glad_glBlitFramebuffer
|
#define glBlitFramebuffer glad_glBlitFramebuffer
|
||||||
|
GLAD_API_CALL PFNGLBLITFRAMEBUFFEREXTPROC glad_glBlitFramebufferEXT;
|
||||||
|
#define glBlitFramebufferEXT glad_glBlitFramebufferEXT
|
||||||
GLAD_API_CALL PFNGLBLITNAMEDFRAMEBUFFERPROC glad_glBlitNamedFramebuffer;
|
GLAD_API_CALL PFNGLBLITNAMEDFRAMEBUFFERPROC glad_glBlitNamedFramebuffer;
|
||||||
#define glBlitNamedFramebuffer glad_glBlitNamedFramebuffer
|
#define glBlitNamedFramebuffer glad_glBlitNamedFramebuffer
|
||||||
GLAD_API_CALL PFNGLBUFFERDATAPROC glad_glBufferData;
|
GLAD_API_CALL PFNGLBUFFERDATAPROC glad_glBufferData;
|
||||||
@@ -4670,6 +4685,8 @@ GLAD_API_CALL PFNGLRENDERBUFFERSTORAGEEXTPROC glad_glRenderbufferStorageEXT;
|
|||||||
#define glRenderbufferStorageEXT glad_glRenderbufferStorageEXT
|
#define glRenderbufferStorageEXT glad_glRenderbufferStorageEXT
|
||||||
GLAD_API_CALL PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample;
|
GLAD_API_CALL PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample;
|
||||||
#define glRenderbufferStorageMultisample glad_glRenderbufferStorageMultisample
|
#define glRenderbufferStorageMultisample glad_glRenderbufferStorageMultisample
|
||||||
|
GLAD_API_CALL PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC glad_glRenderbufferStorageMultisampleEXT;
|
||||||
|
#define glRenderbufferStorageMultisampleEXT glad_glRenderbufferStorageMultisampleEXT
|
||||||
GLAD_API_CALL PFNGLRESUMETRANSFORMFEEDBACKPROC glad_glResumeTransformFeedback;
|
GLAD_API_CALL PFNGLRESUMETRANSFORMFEEDBACKPROC glad_glResumeTransformFeedback;
|
||||||
#define glResumeTransformFeedback glad_glResumeTransformFeedback
|
#define glResumeTransformFeedback glad_glResumeTransformFeedback
|
||||||
GLAD_API_CALL PFNGLROTATEDPROC glad_glRotated;
|
GLAD_API_CALL PFNGLROTATEDPROC glad_glRotated;
|
||||||
|
|||||||
@@ -44,6 +44,8 @@ int GLAD_GL_VERSION_4_5 = 0;
|
|||||||
int GLAD_GL_VERSION_4_6 = 0;
|
int GLAD_GL_VERSION_4_6 = 0;
|
||||||
int GLAD_GL_ARB_compatibility = 0;
|
int GLAD_GL_ARB_compatibility = 0;
|
||||||
int GLAD_GL_ARB_framebuffer_object = 0;
|
int GLAD_GL_ARB_framebuffer_object = 0;
|
||||||
|
int GLAD_GL_EXT_framebuffer_blit = 0;
|
||||||
|
int GLAD_GL_EXT_framebuffer_multisample = 0;
|
||||||
int GLAD_GL_EXT_framebuffer_object = 0;
|
int GLAD_GL_EXT_framebuffer_object = 0;
|
||||||
int GLAD_GL_EXT_texture_compression_s3tc = 0;
|
int GLAD_GL_EXT_texture_compression_s3tc = 0;
|
||||||
int GLAD_GL_EXT_texture_filter_anisotropic = 0;
|
int GLAD_GL_EXT_texture_filter_anisotropic = 0;
|
||||||
@@ -97,6 +99,7 @@ PFNGLBLENDFUNCSEPARATEPROC glad_glBlendFuncSeparate = NULL;
|
|||||||
PFNGLBLENDFUNCSEPARATEIPROC glad_glBlendFuncSeparatei = NULL;
|
PFNGLBLENDFUNCSEPARATEIPROC glad_glBlendFuncSeparatei = NULL;
|
||||||
PFNGLBLENDFUNCIPROC glad_glBlendFunci = NULL;
|
PFNGLBLENDFUNCIPROC glad_glBlendFunci = NULL;
|
||||||
PFNGLBLITFRAMEBUFFERPROC glad_glBlitFramebuffer = NULL;
|
PFNGLBLITFRAMEBUFFERPROC glad_glBlitFramebuffer = NULL;
|
||||||
|
PFNGLBLITFRAMEBUFFEREXTPROC glad_glBlitFramebufferEXT = NULL;
|
||||||
PFNGLBLITNAMEDFRAMEBUFFERPROC glad_glBlitNamedFramebuffer = NULL;
|
PFNGLBLITNAMEDFRAMEBUFFERPROC glad_glBlitNamedFramebuffer = NULL;
|
||||||
PFNGLBUFFERDATAPROC glad_glBufferData = NULL;
|
PFNGLBUFFERDATAPROC glad_glBufferData = NULL;
|
||||||
PFNGLBUFFERSTORAGEPROC glad_glBufferStorage = NULL;
|
PFNGLBUFFERSTORAGEPROC glad_glBufferStorage = NULL;
|
||||||
@@ -773,6 +776,7 @@ PFNGLRENDERMODEPROC glad_glRenderMode = NULL;
|
|||||||
PFNGLRENDERBUFFERSTORAGEPROC glad_glRenderbufferStorage = NULL;
|
PFNGLRENDERBUFFERSTORAGEPROC glad_glRenderbufferStorage = NULL;
|
||||||
PFNGLRENDERBUFFERSTORAGEEXTPROC glad_glRenderbufferStorageEXT = NULL;
|
PFNGLRENDERBUFFERSTORAGEEXTPROC glad_glRenderbufferStorageEXT = NULL;
|
||||||
PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample = NULL;
|
PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample = NULL;
|
||||||
|
PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC glad_glRenderbufferStorageMultisampleEXT = NULL;
|
||||||
PFNGLRESUMETRANSFORMFEEDBACKPROC glad_glResumeTransformFeedback = NULL;
|
PFNGLRESUMETRANSFORMFEEDBACKPROC glad_glResumeTransformFeedback = NULL;
|
||||||
PFNGLROTATEDPROC glad_glRotated = NULL;
|
PFNGLROTATEDPROC glad_glRotated = NULL;
|
||||||
PFNGLROTATEFPROC glad_glRotatef = NULL;
|
PFNGLROTATEFPROC glad_glRotatef = NULL;
|
||||||
@@ -2249,6 +2253,14 @@ static void glad_gl_load_GL_ARB_framebuffer_object( GLADuserptrloadfunc load, vo
|
|||||||
glad_glRenderbufferStorage = (PFNGLRENDERBUFFERSTORAGEPROC) load(userptr, "glRenderbufferStorage");
|
glad_glRenderbufferStorage = (PFNGLRENDERBUFFERSTORAGEPROC) load(userptr, "glRenderbufferStorage");
|
||||||
glad_glRenderbufferStorageMultisample = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC) load(userptr, "glRenderbufferStorageMultisample");
|
glad_glRenderbufferStorageMultisample = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC) load(userptr, "glRenderbufferStorageMultisample");
|
||||||
}
|
}
|
||||||
|
static void glad_gl_load_GL_EXT_framebuffer_blit( GLADuserptrloadfunc load, void* userptr) {
|
||||||
|
if(!GLAD_GL_EXT_framebuffer_blit) return;
|
||||||
|
glad_glBlitFramebufferEXT = (PFNGLBLITFRAMEBUFFEREXTPROC) load(userptr, "glBlitFramebufferEXT");
|
||||||
|
}
|
||||||
|
static void glad_gl_load_GL_EXT_framebuffer_multisample( GLADuserptrloadfunc load, void* userptr) {
|
||||||
|
if(!GLAD_GL_EXT_framebuffer_multisample) return;
|
||||||
|
glad_glRenderbufferStorageMultisampleEXT = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) load(userptr, "glRenderbufferStorageMultisampleEXT");
|
||||||
|
}
|
||||||
static void glad_gl_load_GL_EXT_framebuffer_object( GLADuserptrloadfunc load, void* userptr) {
|
static void glad_gl_load_GL_EXT_framebuffer_object( GLADuserptrloadfunc load, void* userptr) {
|
||||||
if(!GLAD_GL_EXT_framebuffer_object) return;
|
if(!GLAD_GL_EXT_framebuffer_object) return;
|
||||||
glad_glBindFramebufferEXT = (PFNGLBINDFRAMEBUFFEREXTPROC) load(userptr, "glBindFramebufferEXT");
|
glad_glBindFramebufferEXT = (PFNGLBINDFRAMEBUFFEREXTPROC) load(userptr, "glBindFramebufferEXT");
|
||||||
@@ -2366,6 +2378,8 @@ static int glad_gl_find_extensions_gl(void) {
|
|||||||
|
|
||||||
GLAD_GL_ARB_compatibility = glad_gl_has_extension(exts, exts_i, "GL_ARB_compatibility");
|
GLAD_GL_ARB_compatibility = glad_gl_has_extension(exts, exts_i, "GL_ARB_compatibility");
|
||||||
GLAD_GL_ARB_framebuffer_object = glad_gl_has_extension(exts, exts_i, "GL_ARB_framebuffer_object");
|
GLAD_GL_ARB_framebuffer_object = glad_gl_has_extension(exts, exts_i, "GL_ARB_framebuffer_object");
|
||||||
|
GLAD_GL_EXT_framebuffer_blit = glad_gl_has_extension(exts, exts_i, "GL_EXT_framebuffer_blit");
|
||||||
|
GLAD_GL_EXT_framebuffer_multisample = glad_gl_has_extension(exts, exts_i, "GL_EXT_framebuffer_multisample");
|
||||||
GLAD_GL_EXT_framebuffer_object = glad_gl_has_extension(exts, exts_i, "GL_EXT_framebuffer_object");
|
GLAD_GL_EXT_framebuffer_object = glad_gl_has_extension(exts, exts_i, "GL_EXT_framebuffer_object");
|
||||||
GLAD_GL_EXT_texture_compression_s3tc = glad_gl_has_extension(exts, exts_i, "GL_EXT_texture_compression_s3tc");
|
GLAD_GL_EXT_texture_compression_s3tc = glad_gl_has_extension(exts, exts_i, "GL_EXT_texture_compression_s3tc");
|
||||||
GLAD_GL_EXT_texture_filter_anisotropic = glad_gl_has_extension(exts, exts_i, "GL_EXT_texture_filter_anisotropic");
|
GLAD_GL_EXT_texture_filter_anisotropic = glad_gl_has_extension(exts, exts_i, "GL_EXT_texture_filter_anisotropic");
|
||||||
@@ -2451,6 +2465,8 @@ int gladLoadGLUserPtr( GLADuserptrloadfunc load, void *userptr) {
|
|||||||
|
|
||||||
if (!glad_gl_find_extensions_gl()) return 0;
|
if (!glad_gl_find_extensions_gl()) return 0;
|
||||||
glad_gl_load_GL_ARB_framebuffer_object(load, userptr);
|
glad_gl_load_GL_ARB_framebuffer_object(load, userptr);
|
||||||
|
glad_gl_load_GL_EXT_framebuffer_blit(load, userptr);
|
||||||
|
glad_gl_load_GL_EXT_framebuffer_multisample(load, userptr);
|
||||||
glad_gl_load_GL_EXT_framebuffer_object(load, userptr);
|
glad_gl_load_GL_EXT_framebuffer_object(load, userptr);
|
||||||
|
|
||||||
|
|
||||||
@@ -2574,7 +2590,9 @@ static void* glad_gl_dlopen_handle(void) {
|
|||||||
"libGL-1.so",
|
"libGL-1.so",
|
||||||
#endif
|
#endif
|
||||||
"libGL.so.1",
|
"libGL.so.1",
|
||||||
"libGL.so"
|
"libGL.so",
|
||||||
|
"libEGL.so.1",
|
||||||
|
"libEGL.so"
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -2597,6 +2615,9 @@ static struct _glad_gl_userptr glad_gl_build_userptr(void *handle) {
|
|||||||
#else
|
#else
|
||||||
userptr.gl_get_proc_address_ptr =
|
userptr.gl_get_proc_address_ptr =
|
||||||
(GLADglprocaddrfunc) glad_dlsym_handle(handle, "glXGetProcAddressARB");
|
(GLADglprocaddrfunc) glad_dlsym_handle(handle, "glXGetProcAddressARB");
|
||||||
|
if (!userptr.gl_get_proc_address_ptr)
|
||||||
|
userptr.gl_get_proc_address_ptr =
|
||||||
|
(GLADglprocaddrfunc) glad_dlsym_handle(handle, "eglGetProcAddress");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return userptr;
|
return userptr;
|
||||||
|
|||||||
@@ -548,7 +548,7 @@ void GLVolume::render_with_outline(const GUI::Size& cnv_size)
|
|||||||
glsafe(::glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
|
glsafe(::glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
|
||||||
glsafe(::glTexImage2D(GL_TEXTURE_2D, 0, GL_DEPTH_COMPONENT32F, cnv_size.get_width(), cnv_size.get_height(), 0, GL_DEPTH_COMPONENT, GL_FLOAT, nullptr));
|
glsafe(::glTexImage2D(GL_TEXTURE_2D, 0, GL_DEPTH_COMPONENT32F, cnv_size.get_width(), cnv_size.get_height(), 0, GL_DEPTH_COMPONENT, GL_FLOAT, nullptr));
|
||||||
|
|
||||||
glsafe(::glFramebufferTexture2D(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_TEXTURE_2D, depth_tex, 0));
|
glsafe(::glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_TEXTURE_2D, depth_tex, 0));
|
||||||
}
|
}
|
||||||
glsafe(::glClear(GL_DEPTH_BUFFER_BIT));
|
glsafe(::glClear(GL_DEPTH_BUFFER_BIT));
|
||||||
if (tverts_range == std::make_pair<size_t, size_t>(0, -1))
|
if (tverts_range == std::make_pair<size_t, size_t>(0, -1))
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ namespace Slic3r
|
|||||||
AppConfig* config = GUI::wxGetApp().app_config;
|
AppConfig* config = GUI::wxGetApp().app_config;
|
||||||
if (!config)
|
if (!config)
|
||||||
return;
|
return;
|
||||||
const auto& local_machines = config->get_local_machines();
|
const auto local_machines = config->get_local_machines();
|
||||||
for (auto& it : local_machines) {
|
for (auto& it : local_machines) {
|
||||||
const auto& m = it.second;
|
const auto& m = it.second;
|
||||||
if (localMachineList.count(m.dev_id))
|
if (localMachineList.count(m.dev_id))
|
||||||
|
|||||||
@@ -6504,21 +6504,21 @@ void GLCanvas3D::render_thumbnail_framebuffer_ext(ThumbnailData& thumbnail_data,
|
|||||||
// glsafe(::glEnable(GL_MULTISAMPLE));
|
// glsafe(::glEnable(GL_MULTISAMPLE));
|
||||||
|
|
||||||
GLint max_samples;
|
GLint max_samples;
|
||||||
glsafe(::glGetIntegerv(GL_MAX_SAMPLES, &max_samples));
|
glsafe(::glGetIntegerv(GL_MAX_SAMPLES_EXT, &max_samples));
|
||||||
GLsizei num_samples = max_samples / 2;
|
GLsizei num_samples = max_samples / 2;
|
||||||
|
|
||||||
GLuint render_fbo;
|
GLuint render_fbo;
|
||||||
glsafe(::glGenFramebuffers(1, &render_fbo));
|
glsafe(::glGenFramebuffersEXT(1, &render_fbo));
|
||||||
glsafe(::glBindFramebuffer(GL_FRAMEBUFFER, render_fbo));
|
glsafe(::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, render_fbo));
|
||||||
|
|
||||||
GLuint render_tex = 0;
|
GLuint render_tex = 0;
|
||||||
GLuint render_tex_buffer = 0;
|
GLuint render_tex_buffer = 0;
|
||||||
if (multisample) {
|
if (multisample) {
|
||||||
// use renderbuffer instead of texture to avoid the need to use glTexImage2DMultisample which is available only since OpenGL 3.2
|
// use renderbuffer instead of texture to avoid the need to use glTexImage2DMultisample which is available only since OpenGL 3.2
|
||||||
glsafe(::glGenRenderbuffers(1, &render_tex_buffer));
|
glsafe(::glGenRenderbuffersEXT(1, &render_tex_buffer));
|
||||||
glsafe(::glBindRenderbuffer(GL_RENDERBUFFER, render_tex_buffer));
|
glsafe(::glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, render_tex_buffer));
|
||||||
glsafe(::glRenderbufferStorageMultisample(GL_RENDERBUFFER, num_samples, GL_RGBA8, w, h));
|
glsafe(::glRenderbufferStorageMultisampleEXT(GL_RENDERBUFFER_EXT, num_samples, GL_RGBA8, w, h));
|
||||||
glsafe(::glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_RENDERBUFFER, render_tex_buffer));
|
glsafe(::glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_RENDERBUFFER_EXT, render_tex_buffer));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
glsafe(::glGenTextures(1, &render_tex));
|
glsafe(::glGenTextures(1, &render_tex));
|
||||||
@@ -6526,31 +6526,31 @@ void GLCanvas3D::render_thumbnail_framebuffer_ext(ThumbnailData& thumbnail_data,
|
|||||||
glsafe(::glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8, w, h, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr));
|
glsafe(::glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8, w, h, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr));
|
||||||
glsafe(::glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR));
|
glsafe(::glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR));
|
||||||
glsafe(::glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
|
glsafe(::glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
|
||||||
glsafe(::glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, render_tex, 0));
|
glsafe(::glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, render_tex, 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
GLuint render_depth;
|
GLuint render_depth;
|
||||||
glsafe(::glGenRenderbuffers(1, &render_depth));
|
glsafe(::glGenRenderbuffersEXT(1, &render_depth));
|
||||||
glsafe(::glBindRenderbuffer(GL_RENDERBUFFER, render_depth));
|
glsafe(::glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, render_depth));
|
||||||
if (multisample)
|
if (multisample)
|
||||||
glsafe(::glRenderbufferStorageMultisample(GL_RENDERBUFFER, num_samples, GL_DEPTH_COMPONENT24, w, h));
|
glsafe(::glRenderbufferStorageMultisampleEXT(GL_RENDERBUFFER_EXT, num_samples, GL_DEPTH_COMPONENT24, w, h));
|
||||||
else
|
else
|
||||||
glsafe(::glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT, w, h));
|
glsafe(::glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT, w, h));
|
||||||
|
|
||||||
glsafe(::glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, render_depth));
|
glsafe(::glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, render_depth));
|
||||||
|
|
||||||
GLenum drawBufs[] = { GL_COLOR_ATTACHMENT0 };
|
GLenum drawBufs[] = { GL_COLOR_ATTACHMENT0_EXT };
|
||||||
glsafe(::glDrawBuffers(1, drawBufs));
|
glsafe(::glDrawBuffers(1, drawBufs));
|
||||||
|
|
||||||
if (::glCheckFramebufferStatus(GL_FRAMEBUFFER) == GL_FRAMEBUFFER_COMPLETE) {
|
if (::glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT) == GL_FRAMEBUFFER_COMPLETE_EXT) {
|
||||||
render_thumbnail_internal(thumbnail_data, thumbnail_params, partplate_list, model_objects, volumes, extruder_colors, shader, camera_type, camera_view_angle_type,
|
render_thumbnail_internal(thumbnail_data, thumbnail_params, partplate_list, model_objects, volumes, extruder_colors, shader, camera_type, camera_view_angle_type,
|
||||||
for_picking,
|
for_picking,
|
||||||
ban_light);
|
ban_light);
|
||||||
|
|
||||||
if (multisample) {
|
if (multisample) {
|
||||||
GLuint resolve_fbo;
|
GLuint resolve_fbo;
|
||||||
glsafe(::glGenFramebuffers(1, &resolve_fbo));
|
glsafe(::glGenFramebuffersEXT(1, &resolve_fbo));
|
||||||
glsafe(::glBindFramebuffer(GL_FRAMEBUFFER, resolve_fbo));
|
glsafe(::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, resolve_fbo));
|
||||||
|
|
||||||
GLuint resolve_tex;
|
GLuint resolve_tex;
|
||||||
glsafe(::glGenTextures(1, &resolve_tex));
|
glsafe(::glGenTextures(1, &resolve_tex));
|
||||||
@@ -6558,21 +6558,21 @@ void GLCanvas3D::render_thumbnail_framebuffer_ext(ThumbnailData& thumbnail_data,
|
|||||||
glsafe(::glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8, w, h, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr));
|
glsafe(::glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA8, w, h, 0, GL_RGBA, GL_UNSIGNED_BYTE, nullptr));
|
||||||
glsafe(::glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR));
|
glsafe(::glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR));
|
||||||
glsafe(::glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
|
glsafe(::glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
|
||||||
glsafe(::glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, resolve_tex, 0));
|
glsafe(::glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, resolve_tex, 0));
|
||||||
|
|
||||||
glsafe(::glDrawBuffers(1, drawBufs));
|
glsafe(::glDrawBuffers(1, drawBufs));
|
||||||
|
|
||||||
if (::glCheckFramebufferStatus(GL_FRAMEBUFFER) == GL_FRAMEBUFFER_COMPLETE) {
|
if (::glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT) == GL_FRAMEBUFFER_COMPLETE_EXT) {
|
||||||
glsafe(::glBindFramebuffer(GL_READ_FRAMEBUFFER, render_fbo));
|
glsafe(::glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, render_fbo));
|
||||||
glsafe(::glBindFramebuffer(GL_DRAW_FRAMEBUFFER, resolve_fbo));
|
glsafe(::glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, resolve_fbo));
|
||||||
glsafe(::glBlitFramebuffer(0, 0, w, h, 0, 0, w, h, GL_COLOR_BUFFER_BIT, GL_LINEAR));
|
glsafe(::glBlitFramebufferEXT(0, 0, w, h, 0, 0, w, h, GL_COLOR_BUFFER_BIT, GL_LINEAR));
|
||||||
|
|
||||||
glsafe(::glBindFramebuffer(GL_READ_FRAMEBUFFER, resolve_fbo));
|
glsafe(::glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, resolve_fbo));
|
||||||
glsafe(::glReadPixels(0, 0, w, h, GL_RGBA, GL_UNSIGNED_BYTE, (void*)thumbnail_data.pixels.data()));
|
glsafe(::glReadPixels(0, 0, w, h, GL_RGBA, GL_UNSIGNED_BYTE, (void*)thumbnail_data.pixels.data()));
|
||||||
}
|
}
|
||||||
|
|
||||||
glsafe(::glDeleteTextures(1, &resolve_tex));
|
glsafe(::glDeleteTextures(1, &resolve_tex));
|
||||||
glsafe(::glDeleteFramebuffers(1, &resolve_fbo));
|
glsafe(::glDeleteFramebuffersEXT(1, &resolve_fbo));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
glsafe(::glReadPixels(0, 0, w, h, GL_RGBA, GL_UNSIGNED_BYTE, (void*)thumbnail_data.pixels.data()));
|
glsafe(::glReadPixels(0, 0, w, h, GL_RGBA, GL_UNSIGNED_BYTE, (void*)thumbnail_data.pixels.data()));
|
||||||
@@ -6582,13 +6582,13 @@ void GLCanvas3D::render_thumbnail_framebuffer_ext(ThumbnailData& thumbnail_data,
|
|||||||
#endif // ENABLE_THUMBNAIL_GENERATOR_DEBUG_OUTPUT
|
#endif // ENABLE_THUMBNAIL_GENERATOR_DEBUG_OUTPUT
|
||||||
}
|
}
|
||||||
|
|
||||||
glsafe(::glBindFramebuffer(GL_FRAMEBUFFER, 0));
|
glsafe(::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0));
|
||||||
glsafe(::glDeleteRenderbuffers(1, &render_depth));
|
glsafe(::glDeleteRenderbuffersEXT(1, &render_depth));
|
||||||
if (render_tex_buffer != 0)
|
if (render_tex_buffer != 0)
|
||||||
glsafe(::glDeleteRenderbuffers(1, &render_tex_buffer));
|
glsafe(::glDeleteRenderbuffersEXT(1, &render_tex_buffer));
|
||||||
if (render_tex != 0)
|
if (render_tex != 0)
|
||||||
glsafe(::glDeleteTextures(1, &render_tex));
|
glsafe(::glDeleteTextures(1, &render_tex));
|
||||||
glsafe(::glDeleteFramebuffers(1, &render_fbo));
|
glsafe(::glDeleteFramebuffersEXT(1, &render_fbo));
|
||||||
|
|
||||||
//if (!multisample)
|
//if (!multisample)
|
||||||
// glsafe(::glDisable(GL_MULTISAMPLE));
|
// glsafe(::glDisable(GL_MULTISAMPLE));
|
||||||
@@ -7380,8 +7380,8 @@ void GLCanvas3D::_rectangular_selection_picking_pass()
|
|||||||
glsafe(::glBindFramebuffer(GL_FRAMEBUFFER, render_fbo));
|
glsafe(::glBindFramebuffer(GL_FRAMEBUFFER, render_fbo));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
glsafe(::glGenFramebuffers(1, &render_fbo));
|
glsafe(::glGenFramebuffersEXT(1, &render_fbo));
|
||||||
glsafe(::glBindFramebuffer(GL_FRAMEBUFFER, render_fbo));
|
glsafe(::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, render_fbo));
|
||||||
}
|
}
|
||||||
glsafe(::glGenTextures(1, &render_tex));
|
glsafe(::glGenTextures(1, &render_tex));
|
||||||
glsafe(::glBindTexture(GL_TEXTURE_2D, render_tex));
|
glsafe(::glBindTexture(GL_TEXTURE_2D, render_tex));
|
||||||
@@ -7396,11 +7396,11 @@ void GLCanvas3D::_rectangular_selection_picking_pass()
|
|||||||
glsafe(::glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, render_depth));
|
glsafe(::glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, render_depth));
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
glsafe(::glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, render_tex, 0));
|
glsafe(::glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, GL_TEXTURE_2D, render_tex, 0));
|
||||||
glsafe(::glGenRenderbuffers(1, &render_depth));
|
glsafe(::glGenRenderbuffersEXT(1, &render_depth));
|
||||||
glsafe(::glBindRenderbuffer(GL_RENDERBUFFER, render_depth));
|
glsafe(::glBindRenderbufferEXT(GL_RENDERBUFFER_EXT, render_depth));
|
||||||
glsafe(::glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT, width, height));
|
glsafe(::glRenderbufferStorageEXT(GL_RENDERBUFFER_EXT, GL_DEPTH_COMPONENT, width, height));
|
||||||
glsafe(::glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, render_depth));
|
glsafe(::glFramebufferRenderbufferEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, GL_RENDERBUFFER_EXT, render_depth));
|
||||||
}
|
}
|
||||||
const GLenum drawBufs[] = { GL_COLOR_ATTACHMENT0 };
|
const GLenum drawBufs[] = { GL_COLOR_ATTACHMENT0 };
|
||||||
glsafe(::glDrawBuffers(1, drawBufs));
|
glsafe(::glDrawBuffers(1, drawBufs));
|
||||||
@@ -7409,7 +7409,7 @@ void GLCanvas3D::_rectangular_selection_picking_pass()
|
|||||||
use_framebuffer = false;
|
use_framebuffer = false;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (::glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE)
|
if (::glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT) != GL_FRAMEBUFFER_COMPLETE_EXT)
|
||||||
use_framebuffer = false;
|
use_framebuffer = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -7520,11 +7520,11 @@ void GLCanvas3D::_rectangular_selection_picking_pass()
|
|||||||
glsafe(::glDeleteFramebuffers(1, &render_fbo));
|
glsafe(::glDeleteFramebuffers(1, &render_fbo));
|
||||||
}
|
}
|
||||||
else if (framebuffers_type == OpenGLManager::EFramebufferType::Ext) {
|
else if (framebuffers_type == OpenGLManager::EFramebufferType::Ext) {
|
||||||
glsafe(::glBindFramebuffer(GL_FRAMEBUFFER, 0));
|
glsafe(::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0));
|
||||||
if (render_depth != 0)
|
if (render_depth != 0)
|
||||||
glsafe(::glDeleteRenderbuffers(1, &render_depth));
|
glsafe(::glDeleteRenderbuffersEXT(1, &render_depth));
|
||||||
if (render_fbo != 0)
|
if (render_fbo != 0)
|
||||||
glsafe(::glDeleteFramebuffers(1, &render_fbo));
|
glsafe(::glDeleteFramebuffersEXT(1, &render_fbo));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (render_tex != 0)
|
if (render_tex != 0)
|
||||||
|
|||||||
Reference in New Issue
Block a user