Commit Graph

74545 Commits

Author SHA1 Message Date
Keith Whitwell 76dd385fed Catch a couple of cases where we would have to delete and recreate the
miptree object.
2006-09-21 10:06:18 +00:00
Keith Whitwell 3974cc8c09 Deal with the overloading of _mesa_texstore_rgba, which is actually
used to store all sorts of formats.

Software mesa fails the glean pixelFormats test, but it appears to be
failing even with the swizzle code disabled??
2006-09-20 22:40:34 +00:00
Keith Whitwell 3aea82b396 Extend swizzle support to all remaining source formats and texture
destination formats.
2006-09-20 22:02:48 +00:00
Roland Scheidegger 62d4dfbfe3 try to use a 8888 texture format which will result in only a memcopy in mesa's texstore functions whenever possible for r200 and r300. r200 can use hw formats argb8888, rgba8888 and abgr8888 (or the opposite on big endian), r300 can use argb8888, bgra8888, rgba8888 and abgr8888 regardless of endian, as it supports free component swizzling. 2006-09-20 19:11:56 +00:00
Keith Whitwell 46c3bd29be Support both big and little endian, more source types and more
destination formats through the swizzle path.  It would be great to
see this tested on eg, PPC machines...
2006-09-20 18:56:19 +00:00
Roland Scheidegger 528de982f8 reenable code in _mesa_texstore_rgba8888 to avoid the generic copy path if only swizzling is required as it works just fine (tested with glean pixelFormats test and a hacked up r200 driver which always uses that format). 2006-09-20 18:22:19 +00:00
Keith Whitwell 2e5c686c2b Fix various typos to pass glean pixelFormats test. 2006-09-20 17:41:18 +00:00
Keith Whitwell fce0d13b4f Enhance compute_component_mapping() to convert to and from any of the
color base formats.
2006-09-20 17:07:13 +00:00
Keith Whitwell 4f17378ec3 Add a comment about the interactions of negative pitches, overlapping
blits and the different ways of specifying a blit on this hardware.
2006-09-20 15:04:05 +00:00
Keith Whitwell f1d6ad6fe2 remove some dead code 2006-09-20 15:00:24 +00:00
Keith Whitwell b5d0f6c17f Fix some warnings 2006-09-20 14:58:55 +00:00
Roland Scheidegger 85b6d0c4df fix mixed texgen/non-texgen with texgen modes requiring plane parameters (GL_OBJECT_LINEAR, GL_EYE_LINEAR). This is a chip limitation, try to hack it up regardless or use a tcl fallback in some cases. Might still produce wrong results if fixed up, but so far this corrects celestia ring shadows (in multitexture mode), doom3 (arb renderer), quake4 (arb renderer and some less visible bugs in r200 renderer), and even the remaining texgenmix broken case (this is pure luck though, it is easy to construct artifical cases where it will break). 2006-09-20 14:56:21 +00:00
Keith Whitwell e38114a5e4 Support ARB_texture_rectangle. 2006-09-20 14:54:49 +00:00
Keith Whitwell b35121d54d 1) Add a new flag in the sarea (coopting the unused texAge value) to
identify context switches between members of a share group -
ie. multiple contexts in a single application, possibly on different
threads.  In this case the contexts share a bufmgr instance and there
is no need to evict textures - so don't.

2) Use a new flag 'need_flush' to ensure hardware rendering is flushed
prior to starting a software fallback.
2006-09-20 14:44:40 +00:00
Keith Whitwell 3a5319293c Broadwater seems to prefer this style of blitting. 2006-09-20 14:39:53 +00:00
Brian Paul d41d29b8bd make current GLX context per-thread 2006-09-20 14:39:47 +00:00
Brian Paul 0c54e47c0e fix a memleak in DestroyContext() 2006-09-20 14:39:24 +00:00
Keith Whitwell 83c3f9658d add accelerated glCopyPixels path 2006-09-20 14:36:49 +00:00
Keith Whitwell 187f2cfb4a Add a new internal program parameter value STATE_TEXRECT_SCALE which
provides 1/width and 1/height of the active texture, useful for
implementing ARB_texture_rectangle support on hardware which only
supports ARB_npot-style texturing.
2006-09-20 14:30:22 +00:00
Keith Whitwell 0c9259f3b9 Fix _mesa_swizzle_ubyte_image() to deal with RGBA->RGB->RGBA
conversions, ensuring that the final A value is 0xff in those cases
where we use a RGBA hardware texture format to store RGB textures.
Fix a couple of cases where hardwired texture conversions were
ignoring this restriction.
2006-09-20 14:28:42 +00:00
Keith Whitwell 5658810660 Export _mesa_print_alu_instruction() to allow drivers to roll their
own debug code for programs with driver-private opcodes.

Remove redundant loop in _mesa_num_inst_src_regs().
2006-09-20 12:57:54 +00:00
Keith Whitwell cb54c056a6 restore debug output after brw_wm_fp compilation stage 2006-09-20 12:53:35 +00:00
Keith Whitwell 285801a9ed Use DEBUG_SYNC to switch between per-primitive and per-frame aubfile dumps. 2006-09-20 12:49:52 +00:00
Brian Paul c42afefda1 change make depend output redirection to 2>&1 (bug 8344) 2006-09-18 22:55:13 +00:00
Brian Paul 876b41bc03 check for n <= 1 in compute_min_mag_ranges(), bug 8320 2006-09-18 15:03:04 +00:00
Brian Paul f7da4e687c set lambda to zero for textured points (bug 8320) 2006-09-18 15:02:26 +00:00
Stephane Marchesin 7d907ef69c Some small changes 2006-09-17 17:46:36 +00:00
Stephane Marchesin 473a38622e Rename nouveau_tris.* to nouveau_swtcl.* 2006-09-17 15:30:40 +00:00
Stephane Marchesin c67f545520 Small changes 2006-09-17 14:36:07 +00:00
Stephane Marchesin e324c52237 Make nouveau actually compile 2006-09-17 12:09:11 +00:00
Stephane Marchesin 908388b118 Some work towards making the nv10 swtcl compile 2006-09-17 11:58:52 +00:00
Brian Paul 8636981646 replace GLAPI w/ static and init var to 0 (Michel Donais) 2006-09-15 19:00:37 +00:00
Ian Romanick a3b99fcb56 Use correct opcodes for GLX_EXT_texture_from_pixmap.
Set the correct opcodes for GLX_EXT_texture_from_pixmap functions.  Changes
to the glproto package and the core X server are also required.
2006-09-14 21:07:17 +00:00
Jerome Glisse 3dcf23171d Fallback if ColorLogicOp is enabled. Cleanup a bit the fallback
function.
2006-09-14 17:44:58 +00:00
Michel Dänzer 8c9366a807 Remove MESA_LITTLE_ENDIAN guard for code that seems to work fine on big endian. 2006-09-14 16:17:06 +00:00
Keith Whitwell 657f738ea2 VS nr of urb entries is constrained to be one of a fixed set of values,
specifically {8,16,32}.
2006-09-14 10:37:09 +00:00
Roland Scheidegger 6babf624b7 always use argb8888 instead of rgba8888, this is far more likely to hit a faster memcopy path in mesa (at least on little endian systems, possibly on big endian too) 2006-09-13 23:56:09 +00:00
Roland Scheidegger 2e2a981335 detect some more cases which can use straight memcpy for _mesa_texstore_rgba8888 2006-09-13 23:51:39 +00:00
Roland Scheidegger 99e0236046 Always mark tex state atom as dirty when the texture image is dirty, this ensures texture cache gets flushed in case the new texture has the same offset as the old one (fixes glean pixelFormat test at least on r200). 2006-09-13 23:20:10 +00:00
Brian Paul 43aa034084 updated comment 2006-09-13 22:49:48 +00:00
Roland Scheidegger 888b1a9166 don't use derived value _ColorLogicOpEnabled as it's not current by the time we call the blend/logic op functions. Fixes glean logicOp test on r200. 2006-09-13 22:41:46 +00:00
Brian Paul fd2e402359 added GL_CURRENT_RASTER_SECONDARY_COLOR query (OpenGL 2.1) 2006-09-13 21:02:32 +00:00
Brian Paul bd5331f9e8 just comments and const qualifiers 2006-09-13 20:26:43 +00:00
Brian Paul ac1d7370a7 fix broken do_EXP() 2006-09-13 20:14:24 +00:00
Roland Scheidegger cb08dcbbf2 fix GL_REFLECTION_MAP texgen by not using tex matrix negation when lighting is not enabled (?). This fixes demos/cubemap as well as glean texCube test. 2006-09-13 17:35:44 +00:00
Roland Scheidegger 87d6028f28 make sure we upload the new vertex program if the program string changes. 2006-09-13 17:30:11 +00:00
Brian Paul 25d59d2962 make triangle smoothing a sw fallback (Martign van Oosterhout) 2006-09-13 16:41:25 +00:00
Jerome Glisse 323414940f Fix compilation warning. 2006-09-12 18:52:13 +00:00
Jerome Glisse 6a65e6db3d Removing some of r200 dependency, cleaning up code a bit,
and fixing a couple of warning. More cleanup and shuffle
to come. I have tested this change they might broke things
especialy with r300_texstate.c change (format_x doesn't
seems to be use at all by r300).
2006-09-12 18:34:43 +00:00
Keith Whitwell b1cb39d8bd quieten debug 2006-09-12 14:27:57 +00:00