EXTERN_C_ENTER JNIEXPORT void JNICALL Java_org_lwjgl_opengles_EXTDrawBuffers_nglDrawBuffersEXT__IJ(JNIEnv *__env, jclass clazz, jint n, jlong bufsAddress) { glDrawBuffersEXTPROC glDrawBuffersEXT = (glDrawBuffersEXTPROC)tlsGetFunction(410); intptr_t bufs = (intptr_t)bufsAddress; UNUSED_PARAM(clazz) glDrawBuffersEXT(n, bufs); }
void AbstractFramebuffer::drawBuffersImplementationEXT(GLsizei count, const GLenum* buffers) { bindInternal(FramebufferTarget::Draw); #ifndef CORRADE_TARGET_NACL glDrawBuffersEXT(count, buffers); #else static_cast<void>(count); static_cast<void>(buffers); CORRADE_ASSERT_UNREACHABLE(); #endif }
static GLboolean run_test(void) { const GLenum back = GL_BACK; const GLenum att0 = GL_COLOR_ATTACHMENT0; GLuint fbo; GLint max_buffers; glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0); /* Error cases when default framebuffer is bound. */ glDrawBuffersEXT(0, &back); if (!piglit_check_gl_error(GL_INVALID_OPERATION)) return false; glDrawBuffersEXT(2, &back); if (!piglit_check_gl_error(GL_INVALID_OPERATION)) return false; glDrawBuffersEXT(3, &att0); if (!piglit_check_gl_error(GL_INVALID_OPERATION)) return false; /* Positive case with default framebuffer. */ glDrawBuffersEXT(1, &back); if (!piglit_check_gl_error(GL_NO_ERROR)) return false; /* Create user fbo for rest of the tests. */ fbo = create_fbo(); if (!fbo || !piglit_check_gl_error(GL_NO_ERROR)) return false; /* Error cases when user framebuffer is bound. */ glBindFramebuffer(GL_FRAMEBUFFER, fbo); glDrawBuffersEXT(3, invalid_buffer_list); if (!piglit_check_gl_error(GL_INVALID_OPERATION)) return false; glGetIntegerv(GL_MAX_DRAW_BUFFERS_EXT, &max_buffers); if (!piglit_check_gl_error(GL_NO_ERROR)) return false; glDrawBuffersEXT(max_buffers + 1, valid_buffer_list); if (!piglit_check_gl_error(GL_INVALID_VALUE)) return false; /* Positive case with user framebuffer. */ glDrawBuffersEXT(TEXTURE_AMOUNT, valid_buffer_list); if (!piglit_check_gl_error(GL_NO_ERROR)) return false; return true; }