summaryrefslogtreecommitdiff
path: root/src/mesa/main/fbobject.c
AgeCommit message (Collapse)Author
2009-01-22mesa: avoid calling _mesa_test_framebuffer_completeness() more than neededBrian Paul
When we change a FBO's attachments, set _Status=0. Before using an FBO, check if status != GL_FRAMEBUFFER_COMPLETE. Also, fix missing GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE status.
2009-01-22mesa: fix some renderbuffer/framebuffer delete semanticsBrian Paul
Need to unbind buffers if referenced by the current read/draw pointers when being deleted.
2009-01-22mesa: add support for GL_DEPTH_STENCIL_ATTACHMENT point.Brian Paul
Used to set both the depth and stencil attachment points to one renderbuffer of texture.
2009-01-22mesa: additional FBO error checking for multisample-related thingsBrian Paul
Plus some new comments.
2009-01-22mesa: refactor glRenderbufferStorage(), glRenderbufferStorageMultisample() codeBrian Paul
Use a common helper routine for both functions.
2009-01-22mesa: stub for _mesa_RenderbufferStorageMultisample()Brian Paul
2009-01-22mesa: call fbo_incomplete() if driver marks FBO as incomplete (debug only)Brian Paul
2009-01-22mesa: added ctx->Driver.ValidateFramebuffer() callbackBrian Paul
Called from the _mesa_test_framebuffer_completeness() function to give the driver the chance to make a framebuffer as incomplete if it doesn't meet some specific hardware restriction.
2009-01-22mesa: add new ARB_fbo queries, fix some error testsBrian Paul
2009-01-22mesa: additional FBO/RB id error checking for ARB_fboBrian Paul
It's illegal to bind a FBO/RB id that didn't come from glGenRender/Framebuffer().
2009-01-22mesa: for ARB_fbo, lift restriction that all FBO attachments are same size ↵Brian Paul
and color format
2008-12-06mesa: Fix GenerateMipmapEXT(GL_TEXTURE_CUBE_MAP_ARB).Eric Anholt
The ctx->Driver.GenerateMipmap() hook only expects cubemap face enums, not CUBE_MAP_ARB, so walk all faces when we encounter that. Fixes oglconform fbo.c segfault with both swrast and i965 drivers.
2008-09-21mesa: fix some feature testsBrian Paul
(cherry picked from commit 74b14fe6ddbece8bc662aac4d3b2b18d8d853486)
2008-08-06fix some FBO/texture queries (bug 15296)Brian Paul
2008-07-04mesa: remove incorrect assertionBrian Paul
2008-07-03mesa: fix problem freeing framebuffer/renderbuffer objectsBrian Paul
Basically, set up no-op Delete() methods for the DummyFrame/Renderbuffer objects.
2008-05-09Revert "mesa/intel: map/unmap texture objects around mipmap generation ↵Dave Airlie
function." This reverts commit c50ffc4cb89b67ae59208eb72cdb664c846ba987. I'll fix this using the mipmap hooks I just picked from gallium-0.1
2008-05-09Remove unused texunit parameter to ctx->Driver.GenerateMipmap()Brian
(cherry picked from commit c3395f4473c8fdf75d04c0dd72e687bc8d8127a7)
2008-05-09Added ctx->Driver.GenerateMipmap() driver hookDave Airlie
(cherry picked from commit 4c2f3dbca940f289e67248682b84a3516d5a3031) Conflicts: src/mesa/drivers/common/driverfuncs.c
2008-05-09mesa/intel: map/unmap texture objects around mipmap generation function.Dave Airlie
This at least stops the compiz brain explosion we were seeing, I do wonder though if we should somehow be calling intel_generate_mipmap somehow.
2008-03-28fix texture/renderbuffer mix-up in test_attachment_completeness()Brian
2007-11-09check for texture and renderbuffer in check_end_texture_render()Brian
2007-08-18remove dead code left over after fixing GL_READ/DRAW_BUFFER state issuesBrian
2007-08-16Rework the GL_READ_BUFFER, GL_DRAW_BUFFER state repairs that Roland ↵Brian
previously did. Basically, in update_framebuffer() (which should be called after an FBO is bound with MakeCurrent or BindFramebuffer) we check if the FBO is a window-system FBO. If it is, update the FBO's GL_READ/DRAW_BUFFER state according to the context state. Old code still in place but disabled with #if 0 / #endif.
2007-08-13Implement mutex/locking around texture object reference counting.Brian
Use new _mesa_reference_texobj() function for referencing/unreferencing textures. Add new assertions/tests to try to detect invalid usage of deleted textures.
2007-07-19fix mesa's handling of fbo's / window fb (again)Roland Scheidegger
Make sure the relevant fields in window fbs get updated at appropriate time (those are NOT the same as fbos!!!), and fix up related code accordingly. This is a bit ugly, but there's a reason the issues section in EXT_fbo is a couple hundred pages long... Hopefully correct now.
2007-07-19more fixes for mesa's fbo handling (fixes tests/fbotest1/2)Roland Scheidegger
2007-07-19fix mesa fb bindingRoland Scheidegger
Make sure that we bind the right buffer (draw or read) when rebinding the window framebuffer (the api doesn't allow binding different draw and read buffers at the same time, but the default window framebuffer is basically 2 fb objects, one for read, one for write, which can be different). Pass both of these two down the driver api (no driver uses this right now).
2007-05-16Initial implementation of MESA_texture_arrayIan Romanick
Shadow sampling from texture arrays is still not implemented. Everything else should be there, though.
2007-05-15Bring framebuffer_texture's error checking more in-line with the spec.Ian Romanick
2007-04-02use _mesa_reference_renderbuffer() in a few more placesBrian
2007-03-25Fix some renderbuffer reference counting issues. Also fixes a mem leak.Brian
2007-03-06explicit calls to _mesa_unreference_framebuffer() not always needed nowBrian
2007-03-06Fix/improve framebuffer object reference counting.Brian
Use _mesa_reference_framebuffer() and _mesa_unreference_framebuffer() functions to be sure reference counting is done correctly. Additional assertions are done too. Note _mesa_dereference_framebuffer() renamed to "unreference" as that's more accurate.
2007-03-01move oldFb decl into tighter scopesBrian
2006-11-01Merge texmem-0-3-branch.Keith Whitwell
2006-09-29Move mipmap generation functions, texture scaling functions into newBrian Paul
mipmap.c file.
2006-09-22Flush driver, not just tnl module.Keith Whitwell
2006-05-20use new _mesa_dereference_frame/renderbuffer() functionsBrian Paul
2006-04-13casts to fix some -pedantic warningsBrian Paul
2006-04-05Remove the code that checks for duplicated framebuffer attachments (whichBrian Paul
generated the error GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT). This was removed in version 117 of the GL_EXT_framebuffer_object spec.
2006-04-05Silence minor compiler warnings (-Wextra).Brian Paul
2006-03-28update conditional for render to GL_DEPTH_STENCIL texture, check for valid ↵Brian Paul
teximage before calling ctx->Driver.RenderTexture()
2006-03-26merge from texman branchBrian Paul
2006-03-20Lots of changes/fixes for rendering to framebuffer objects.Brian Paul
- When deleting texture objects, unbind from FBOs if necessary. - Changed driver hooks for starting/ending render to texture. - Now properly handle case where gl[Copy]TexImage() is called after glFramebufferTexture[123]D(). That didn't work before.
2006-03-20additional assertions and debug code for testing FBO completenessBrian Paul
2006-03-15sync with texmem branchBrian Paul
2006-03-07call _mesa_update_framebuffer_visual() in _mesa_FramebufferRenderbufferEXT() ↵Brian Paul
to fix some minor glitches
2006-03-01remove temporary tokens, more error checks for blit functionBrian Paul
2005-12-01Added FinishRenderTexture() device driver function to indicate whenBrian Paul
rendering to a texture has likely completed. Fixed refcount issue in texture renderbuffer wrapper.