Commit graph

29160 commits

Author SHA1 Message Date
Brian Paul
c0b4fb06b8 gallium: pipe_context::render_condition() and mode flags
For conditional rendering predicated on results of an occlusion query.

If this driver function is NULL, conditional rendering is not supported by
the driver.
2009-12-31 14:45:15 -07:00
Brian Paul
25024d9482 Merge branch 'mesa_7_7_branch'
Conflicts:
	configs/darwin
	src/gallium/auxiliary/util/u_clear.h
	src/gallium/state_trackers/xorg/xorg_exa_tgsi.c
	src/mesa/drivers/dri/i965/brw_draw_upload.c
2009-12-31 09:02:27 -07:00
Brian Paul
d14beea534 mesa: remove a line of dead code 2009-12-31 08:50:26 -07:00
Brian Paul
06f10903cb docs: 7.8 relnotes: GL_NV_conditional_render and GL_EXT_draw_buffers2 2009-12-31 08:49:28 -07:00
Brian Paul
f10470e3fe mesa: enable ColorMaskIndexed in display lists 2009-12-31 08:49:28 -07:00
Brian Paul
34075d0219 progs/tests: added test for GL_EXT_draw_buffers2
Render into two color buffers (render targets).  Display half of each
buffer in the window.  Use different color masks for each render target.
Only enable blending for the second render target.
2009-12-31 08:49:27 -07:00
Brian Paul
fcc2e1a729 mesa: enable GL_EXT_draw_buffers2 for sw drivers 2009-12-31 08:49:27 -07:00
Brian Paul
c28b451e40 docs: update status for conditional rendering 2009-12-31 08:49:27 -07:00
Brian Paul
08d145e1d7 progs/tests: added conditional rendering test program 2009-12-31 08:49:27 -07:00
Brian Paul
aa491c19b9 mesa: turn on NV_conditional_render for software drivers 2009-12-31 08:49:27 -07:00
Brian Paul
ab26682eb4 swrast: add check for conditional rendering 2009-12-31 08:49:27 -07:00
Brian Paul
699cfaeb3c tnl: add check for conditional rendering 2009-12-31 08:49:26 -07:00
Brian Paul
ff3a52643d mesa: plug in API functions for conditional rendering 2009-12-31 08:49:26 -07:00
Brian Paul
007b1f42c4 mesa: added dispatch for GL_NV_conditional_render extension 2009-12-31 08:49:26 -07:00
Brian Paul
5a0eb89da5 mesa: added FLUSH_VERTICES(), more comments 2009-12-31 08:49:26 -07:00
Brian Paul
2be0d77a97 mesa: add flag for GL_NV_conditional_render extension 2009-12-31 08:49:26 -07:00
Brian Paul
0fbe828c1d mesa: _mesa_Begin/EndConditionalRender() functions
For GL_NV_conditional_render and GL3.

The drawing functions don't check the query object yet.
No API dispatch yet.
2009-12-31 08:49:26 -07:00
Brian Paul
534e005185 mesa: make _mesa_lookup_query_object() an non-private inline function 2009-12-31 08:49:25 -07:00
Brian Paul
195e7657e2 swrast: use different temp array in _swrast_get_dest_rgba()
When using multiple color drawbuffers with blending/logicop/masking we
were overwriting color values which we still needed.
2009-12-31 08:44:27 -07:00
Christoph Bumiller
4e4244b910 nv50: fix TEXLOD sequence and use it only in FPs 2009-12-31 14:34:46 +01:00
Christoph Bumiller
616ddc8dfa nv50: cannot kill branch if immediate is used
The immediate's bits eat the condition bits.
2009-12-31 14:34:42 +01:00
Christoph Bumiller
b3425bc360 nv50: make assimilate_temp safe
Cannot change hw reg assigned to a TGSI TEMP on the fly if
we are in a loop, conditional, or can jump around wildly.
2009-12-31 14:34:38 +01:00
Christoph Bumiller
d9ae8f31d5 nv50: handle TGSI_OPCODE_EXP,LOG
Not that they make much sense on nv50, but we also do LIT ...
2009-12-31 14:34:34 +01:00
Christoph Bumiller
f2cca04bd8 nv50: add support for subroutines 2009-12-31 14:34:30 +01:00
Christoph Bumiller
170cdb4507 nv50: alloc_reg on reg_instance
If we create multiple instances of an nv50_reg referencing
them same resource, register allocation from alloc_reg has
to be done with the original nv50_reg.
2009-12-31 14:34:26 +01:00
Christoph Bumiller
0ba518e327 nv50: multiply polygon offset units by 2 2009-12-31 14:34:22 +01:00
Christoph Bumiller
4d2551beb7 nv50: neg and abs modifiers for flops
Also fixes RSQ of negative sources.
2009-12-31 14:34:17 +01:00
Christoph Bumiller
3019afdbd8 nv50: don't negate immediates in set_immd
This negation would only be triggered in situations
where it's incorrect.
The caller of set_immd should negate the immediate value
in the instruction itself if desired, and will also know
if it's a float or an int.

ADD TEMP[0], CONST[0], -IMMD[0] would load the immediate
into extra TEMP, negated, and set the negate flag in add
as well - double negation.
2009-12-31 14:34:10 +01:00
Vinson Lee
6e0584932b mesa: Silence unused variable warning. 2009-12-31 00:07:47 -08:00
Vinson Lee
5b2713c92a progs/glsl: Provide a better fix for fgets warning. 2009-12-30 12:38:21 -08:00
Brian Paul
9b0bbe15a5 docs: added GL 3.x feature checklist to track what's done in Mesa 2009-12-30 10:39:20 -07:00
Brian Paul
16e91d4c0e mesa: implement _mesa_GetStringi() for GL3
Note: not plugged into the dispatch table yet.
2009-12-30 10:30:23 -07:00
Brian Paul
56bdaca03e mesa: _mesa_get_enabled_extension() function 2009-12-30 10:29:53 -07:00
Brian Paul
802b808939 mesa: implement GL3 GL_NUM_EXTENSIONS query 2009-12-30 10:16:01 -07:00
Brian Paul
1ec6de9f94 mesa: simplify some extension testing code 2009-12-30 10:13:31 -07:00
Brian Paul
05fb922e61 mesa: display list support for glClearBuffer functions
Note: some code disabled until dispatch table supports GL3 entrypoints.
2009-12-30 09:45:58 -07:00
Brian Paul
2b5ece5746 mesa: implement GL3 glClearBuffer() functions
These functions clear color/depth/stencil buffers with a value that's
passed to the function, rather than the context clear values.

For now these functions are implemented in terms of the existing
ctx->Driver.Clear() hook.  In the future when we have non-normalized
integer and unsigned integer color buffer formats we'll need new
driver hook(s) to pass int and uint clear values to the driver.

Note: these functions are not hooked into the dispatch table at this time.
2009-12-30 09:30:24 -07:00
Brian Paul
12039aa7a9 mklib: use a wrapper for ar 2009-12-30 09:30:24 -07:00
Luca Barbieri
9656177bc0 nouveau: Fix glTexSubImage on swizzled surfaces on <=NV40
Currently in nvXX_transfer_new a temporary as large as the surface is created.
If the subrectangle is not the whole texture we would need to read
back the whole texture, but we aren't.
Thus, everything but the subrectangle specified is loaded as garbage.
This can be seen in progs/demos/ray.

This patch fixes the problem by creating a temporary that covers only
the desired subrectangle.

That makes us hit an alignment assert in nv04_surface_2d.c. Fix it
using the point registers instead of manipulating the swizzled surface
offset to account for the destination coordinates (which do not seem
to have a 1024 limit).

Signed-off-by: Francisco Jerez <currojerez@riseup.net>
2009-12-30 14:37:19 +01:00
Brian Paul
f00bf0598c st/mesa: add PIPE_FORMAT_Z24S8_UNORM in st_get_format_info()
Fixes progs/demos/fbotexture on Nouveau.
Patch submitted by Luca Barbieri <luca@luca-barbieri.com>.
2009-12-29 23:31:43 -07:00
Vinson Lee
de95e5768b glu/sgi: Initialize members of struct O_nurbssurface. 2009-12-29 22:29:53 -08:00
Brian Paul
1677d5c0ae mesa: fix-up blend enable/disable code in _mesa_PopAttrib() 2009-12-29 23:04:27 -07:00
Brian Paul
36092fa2d8 mesa: finish-up indexed color mask code in _mesa_PopAttrib() 2009-12-29 22:58:44 -07:00
Brian Paul
81c72a1dab mesa: plug in GL_EXT_draw_buffers2 functions 2009-12-29 22:56:32 -07:00
Brian Paul
285d3f9ed8 mesa: regenerate API files related to GL_EXT_draw_buffers2 2009-12-29 22:55:57 -07:00
Brian Paul
ca3a8538b6 glapi: extension info for GL_EXT_draw_buffers2 2009-12-29 22:54:30 -07:00
Vinson Lee
ac21edff1c tdfx: Silence uninitialized variable warning. 2009-12-29 21:34:06 -08:00
Vinson Lee
0ab29d2b35 progs/glsl: Silence compiler warnings. 2009-12-29 21:11:37 -08:00
Vinson Lee
70bbe22366 glu/sgi: Silence warn_unused_result warnings. 2009-12-29 21:03:23 -08:00
Vinson Lee
31263f41a0 st/xorg: Use C-style comments. 2009-12-29 20:56:47 -08:00