Lines Matching full:framebuffer
41 #include "framebuffer.h"
71 /* We bind this framebuffer when applications pass a NULL
163 * GL_INVALID_OPERATION if the framebuffer doesn't exist.
174 "%s(non-existent framebuffer %u)", func, id);
183 * Mark the given framebuffer as invalid. This will force the
184 * test for framebuffer completeness to be done before the framebuffer
196 * framebuffer target, such as GL_DRAW_FRAMEBUFFER.
285 * window-system framebuffer (not user-created framebuffer objects).
341 * "If the default framebuffer is bound to target, then attachment must
350 * "If the default framebuffer is bound to <target>, then <attachment>
430 * to share most of their framebuffer rendering code between winsys,
542 * Attach a renderbuffer object to a framebuffer object.
621 * Return true if the framebuffer has a combined depth/stencil
944 * Test if the given framebuffer object is complete and update its
948 * Also update the framebuffer's Width and Height fields if the
949 * framebuffer is complete.
972 /* we're changing framebuffer fields here */
1170 fbo_incomplete(ctx, "layered framebuffer has mismatched targets", i);
1175 "framebuffer attachment layer mode is inconsistent",
1203 * Section 9.4.1 "Framebuffer Attachment Completeness", pg 310-311
1253 /* The OpenGL ES3 spec, in chapter 9.4. FRAMEBUFFER COMPLETENESS, says:
1284 * renderbuffers/textures are different sizes, the framebuffer
1292 /* finally, update the visual info for the framebuffer */
1470 /* check framebuffer binding */
1534 /* check framebuffer binding */
1548 * the framebuffer.
1570 /* Section 4.4.4 (Framebuffer Completeness), subsection "Whole Framebuffer
1574 * framebuffer is considered complete or incomplete:
1579 * containing an image that is attached to a framebuffer object
1580 * that is bound to the framebuffer."
1614 /* Section 4.4.2 (Attaching Images to Framebuffer Objects),
1615 * subsection "Attaching Renderbuffer Images to a Framebuffer,"
1620 * bound framebuffer, then it is as if FramebufferRenderbuffer
1623 * currently bound framebuffer. In other words, this
1625 * points in the currently bound framebuffer. Note that the
2440 _mesa_IsFramebuffer(GLuint framebuffer)
2444 if (framebuffer) {
2445 struct gl_framebuffer *rb = _mesa_lookup_framebuffer(ctx, framebuffer);
2454 * Check if any of the attachments of the given framebuffer are textures
2478 * Examine all the framebuffer's attachments to see if any are textures.
2503 bind_framebuffer(GLenum target, GLuint framebuffer, bool allow_user_names)
2527 if (framebuffer) {
2528 /* Binding a user-created framebuffer object */
2529 newDrawFb = _mesa_lookup_framebuffer(ctx, framebuffer);
2531 /* ID was reserved, but no real framebuffer object made yet */
2541 /* create new framebuffer object */
2542 newDrawFb = ctx->Driver.NewFramebuffer(ctx, framebuffer);
2547 _mesa_HashInsert(ctx->Shared->FrameBuffers, framebuffer, newDrawFb);
2552 /* Binding the window system framebuffer (which was originally set
2581 * When a framebuffer with texture attachments is unbound, call
2583 * When a framebuffer with texture attachments is bound, call
2601 /* check if old framebuffer had any texture attachments */
2605 /* check if newly bound framebuffer has any texture attachments */
2613 * want to know if the draw framebuffer changed.
2622 _mesa_BindFramebuffer(GLenum target, GLuint framebuffer)
2629 bind_framebuffer(target, framebuffer, _mesa_is_gles(ctx));
2634 _mesa_BindFramebufferEXT(GLenum target, GLuint framebuffer)
2640 bind_framebuffer(target, framebuffer, true);
2664 /* check if deleting currently bound framebuffer object */
2802 _mesa_CheckNamedFramebufferStatus(GLuint framebuffer, GLenum target)
2808 * default framebuffer in case framebuffer = 0.
2809 * Section 9.4 Framebuffer Completeness of the OpenGL 4.5 core spec
2811 * "If framebuffer is zero, then the status of the default read or
2812 * draw framebuffer (as determined by target) is returned."
2829 if (framebuffer) {
2830 fb = _mesa_lookup_framebuffer_err(ctx, framebuffer,
2891 * Managing Framebuffer Objects specifies a different error
3154 /* The window-system framebuffer object is immutable */
3156 _mesa_error(ctx, GL_INVALID_OPERATION, "%s(window-system framebuffer)",
3244 /* Get the framebuffer object */
3311 /* Get the framebuffer object */
3347 _mesa_NamedFramebufferTextureLayer(GLuint framebuffer, GLenum attachment,
3357 /* Get the framebuffer object */
3358 fb = _mesa_lookup_framebuffer_err(ctx, framebuffer, func);
3405 /* Get the framebuffer object */
3432 _mesa_NamedFramebufferTexture(GLuint framebuffer, GLenum attachment,
3448 /* Get the framebuffer object */
3449 fb = _mesa_lookup_framebuffer_err(ctx, framebuffer, func);
3484 /* Some subsequent GL commands may depend on the framebuffer's visual
3501 /* Can't attach new renderbuffers to a window system framebuffer */
3503 "%s(window-system framebuffer)", func);
3511 * a Framebuffer":
3588 _mesa_NamedFramebufferRenderbuffer(GLuint framebuffer, GLenum attachment,
3596 fb = _mesa_lookup_framebuffer_err(ctx, framebuffer,
3644 * framebuffer is bound to target. In this case querying pname
3655 * "If the framebuffer currently bound to target is zero, then
3666 "%s(window-system framebuffer)", caller);
3679 * GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME with the default framebuffer,
3698 /* user-created framebuffer FBO */
3704 * From OpenGL 4.5 spec, section 9.2.3 "Framebuffer Object Queries":
3706 * "An INVALID_OPERATION error is generated if a framebuffer object
3751 /* From the OpenGL spec, 9.2. Binding and Managing Framebuffer Objects:
3754 * either no framebuffer is bound to target; or the default framebuffer
3984 _mesa_GetNamedFramebufferAttachmentParameteriv(GLuint framebuffer,
3991 if (framebuffer) {
3992 buffer = _mesa_lookup_framebuffer_err(ctx, framebuffer,
3999 * Section 9.2 Binding and Managing Framebuffer Objects of the OpenGL
4001 * "If framebuffer is zero, then the default draw framebuffer is
4014 _mesa_NamedFramebufferParameteri(GLuint framebuffer, GLenum pname,
4027 fb = _mesa_lookup_framebuffer_err(ctx, framebuffer,
4038 _mesa_GetNamedFramebufferParameteriv(GLuint framebuffer, GLenum pname,
4051 if (framebuffer) {
4052 fb = _mesa_lookup_framebuffer_err(ctx, framebuffer,
4074 /* Section 17.4 Whole Framebuffer Operations of the OpenGL 4.5 Core
4100 * framebuffer bound to <target>, it is ignored."
4218 _mesa_InvalidateNamedFramebufferSubData(GLuint framebuffer,
4228 * Framebuffer Operations, PDF page 522): "If framebuffer is zero, the
4229 * default draw framebuffer is affected."
4231 if (framebuffer) {
4232 fb = _mesa_lookup_framebuffer_err(ctx, framebuffer,
4282 _mesa_InvalidateNamedFramebufferData(GLuint framebuffer,
4290 * Framebuffer Operations, PDF page 522): "If framebuffer is zero, the
4291 * default draw framebuffer is affected."
4293 if (framebuffer) {
4294 fb = _mesa_lookup_framebuffer_err(ctx, framebuffer,