Commit Graph

7744 Commits

Author SHA1 Message Date
Keith Whitwell
8ecd83f6cd silence debug messages texman_0_1_20060330 2006-03-29 21:27:09 +00:00
Brian Paul
cff7e025ed fix ReadBuffer mapping bugs 2006-03-29 21:22:05 +00:00
Thomas Hellström
3de9a9bd1d Bump driver date.
Keep the lock mutex locked while we hold the heavyweight lock.
2006-03-29 21:21:54 +00:00
Keith Whitwell
e6cae6e6f6 Turn compiler optimizations back on. 2006-03-29 21:09:14 +00:00
Thomas Hellström
9cf5945b83 Age the last_swap_fence properly.
Should be safe unless the client idles without rendering for some
time, while another client renders.
2006-03-29 13:20:50 +00:00
Keith Whitwell
d6ddc33f07 Protect the DRI __driUtilUpdateDrawable code and other "complex" code
inside intelGetLock() with a mutex.  Fixes problems with multithreaded
applications dying when moving windows, etc.  There seem to be multiple
traps for threaded apps in that code, this is a bandaid on those.
2006-03-27 18:31:27 +00:00
Brian Paul
ec32d129b7 remove a temporary FBO test in intel_map_unmap_buffers() - fixes flickering in tunnel demo 2006-03-27 14:48:22 +00:00
Thomas Hellström
cd41c27446 zero-valued fences are not considered retired for a system that has been
running for a day or so. Initialize to a better value.
2006-03-27 13:55:45 +00:00
Brian Paul
af6a480117 remove some unneeded code texman_0_1_20060325 2006-03-26 05:15:21 +00:00
Brian Paul
14e9700621 merge from trunk 2006-03-25 23:48:18 +00:00
Brian Paul
7fb177c367 Shorten ctx->Driver.RenderbufferTexture to ctx->Driver.RenderTexture since
calls to it no longer directly correspond to glRenderbufferTextureEXT.
2006-03-25 22:14:09 +00:00
Brian Paul
d65cda4ce3 Implement software fallback for render-to-texture when the texture format
can't be rendered by the hardware.
2006-03-25 17:56:49 +00:00
Brian Paul
460a375d85 fix a couple issues in _mesa_free_framebuffer_data() 2006-03-25 17:55:07 +00:00
Brian Paul
c3c5652602 comments 2006-03-25 16:21:07 +00:00
Brian Paul
e1998baef8 Implement rendering to textures for any mipmap level, any cube face, any
3D texture slice.
Added draw_offset to intel_region struct.
2006-03-25 16:20:27 +00:00
Brian Paul
3e980901b0 check if copying from FBO, adjust x, y accordingly 2006-03-25 16:19:07 +00:00
Brian Paul
14fe63a12b Check for incomplete framebuffer in _mesa_Clear() 2006-03-25 16:13:45 +00:00
Brian Paul
fbd147c0b5 unlock mutex before freeing data (caught w/ valgrind) 2006-03-25 15:40:24 +00:00
Brian Paul
7b7c54e94c Replace _mesa_destroy_context() with _mesa_free_context_data() because ctx
is a member of the intel_context struct and the former calls frees the
ctx pointer - BAD.
2006-03-25 15:37:33 +00:00
Brian Paul
84dd9c8112 silence several -pedantic warnings 2006-03-25 15:10:35 +00:00
Brian Paul
bba85343e7 remove stray semicolon 2006-03-25 15:05:07 +00:00
Brian Paul
6484b373c3 s/inline/INLINE/ to allow use of -ansi flag with gcc. 2006-03-25 15:01:42 +00:00
Brian Paul
245a3c54c7 merge from trunk 2006-03-24 23:57:20 +00:00
Brian Paul
1266e633cc In i915/i830_update_tex_unit() get the firstImage pointer _after_ we've called
intel_finalize_mipmap_tree().
This fixes a problem where the wrong mipmap level was used when the
texture's GL_TEXTURE_BASE_LEVEL value wasn't zero.  But this only happened
the first time the texture was used.  That took a while to track down!
2006-03-24 23:43:16 +00:00
Brian Paul
86042f53f2 added some missing formats in _mesa_source/dest_buffer_exists() 2006-03-24 22:51:49 +00:00
Brian Paul
068062f997 better switch cases 2006-03-24 22:33:03 +00:00
Brian Paul
c62af8e3b7 update scissor at end of intel_draw_buffer() 2006-03-24 22:32:24 +00:00
Brian Paul
8e5650d7f4 no need to pass ctx to _mesa_clip_to_region() 2006-03-24 22:30:55 +00:00
Brian Paul
65f1cf2cbf update i915/i830Scissor to use DrawBuffer instead of driDrawable bounds 2006-03-24 22:03:22 +00:00
Brian Paul
f04f5e990a minor clean-ups 2006-03-24 16:51:51 +00:00
Brian Paul
1854ebe77e more fixes and clean-up in intelCopyBuffer() 2006-03-24 14:42:04 +00:00
Brian Paul
3500f2e3c4 some comments 2006-03-23 23:23:18 +00:00
Brian Paul
cfeefc9b81 just comments 2006-03-23 23:17:57 +00:00
Brian Paul
3ad6adfb57 another intelFlush() call 2006-03-23 23:11:50 +00:00
Brian Paul
8a126f1166 fix some mapping bugs 2006-03-23 23:11:30 +00:00
Brian Paul
6315aabcf2 check for NULL rb in _mesa_framebuffer_renderbuffer() 2006-03-23 23:11:07 +00:00
Brian Paul
a8c2344364 Added an intelFlush() call inside intel_bind_framebuffer() to be sure
any previous rendering is completed.  Not sure why this is needed when
_mesa_BindFramebufferEXT() does a FLUSH_VERTICES() call.
This fixes an offset/wrap-around bug when rendering to FBOs.
2006-03-23 22:33:58 +00:00
Brian Paul
2929b2569b added render/framebuffer locking for thread safety 2006-03-23 20:08:15 +00:00
Brian Paul
f14790d7b0 tweak to render-to-texture region code 2006-03-23 20:05:33 +00:00
Brian Paul
8fb2e61801 In intelCopyBuffer() use current context, not dPriv->driContextPriv->driverPrivate.
The later can lead to nested locking attempt with threaded apps.
2006-03-23 20:03:57 +00:00
Brian Paul
b3c94f9d9d move prevLockFile/Line into context struct 2006-03-23 20:02:57 +00:00
Brian Paul
5b889f7f2d INTEL_PACKCOLOR() no longer needed 2006-03-23 18:58:48 +00:00
Brian Paul
0f531b5b48 Combine the bodies of _mesa_FramebufferTexture1D/2D/3DEXT into a single
function.
2006-03-23 18:25:52 +00:00
Brian Paul
c6482c0d41 Comment about removing screen->fbFormat field in the future. 2006-03-23 02:02:34 +00:00
Brian Paul
b71748efd1 In intelClearColor() always compute both 16bpp and 32bpp clear values
since we won't know which is needed until we're in glClear.
2006-03-23 02:00:45 +00:00
Brian Paul
1c4b9edc41 Initial attempt at software fallback for rendering to a hardware texture
when the texture format isn't supported by the hw rendering system.
Doesn't work yet.
2006-03-23 01:13:43 +00:00
Brian Paul
2b464d93d1 Before calling intel_region_release/reference() check if the regions
are changing.
2006-03-23 01:12:24 +00:00
Brian Paul
497f80ac34 Only try to validate depth/stencil pairing for user-created FBOs.
Disable the intel_region_release/reference() code in intel_draw_buffer()
since it seems redundant with same thing in i915_state_draw_region().
2006-03-23 01:11:29 +00:00
Brian Paul
2be748769b assert(refcount > 0) in intel_region_release() - helpful for finding refernces to free'd memory 2006-03-23 01:03:35 +00:00
Brian Paul
45a1083ee7 use intel_region_reference() in MakeCurrent to make sure we don't accidentally lose the screen->front/back/depth regions 2006-03-23 01:00:49 +00:00