Commit graph

34652 commits

Author SHA1 Message Date
Roland Scheidegger
1e17178fc4 llvmpipe: adapt to clear interface changes
with some newfangled code, should support separate depth/stencil clears.
Needs some testing.
2010-05-29 01:31:01 +02:00
Roland Scheidegger
837d32062e i965g: adapt to clear interface changes
just like i915g, should in theory support separate depth/stencil clears
(untested), with the same 2d blitter hacks.
2010-05-29 01:29:31 +02:00
Roland Scheidegger
4bc7b14224 i915g: adapt to clear interface changes
should in theory support separate depth/stencil clears (untested).
Also fix some format omissions?
2010-05-29 01:28:21 +02:00
Roland Scheidegger
10baf7ec1d r300g: adapt to clear interface changes
should support separate depth/stencil clears just fine with changed u_blitter.
2010-05-29 01:26:22 +02:00
Roland Scheidegger
e5b82c8222 nv50: adapt to clear interface changes
should support separate depth/stencil clears just fine.
2010-05-29 01:25:09 +02:00
Roland Scheidegger
c5cccf8a49 nvfx: adapt to clear interface changes 2010-05-29 01:24:25 +02:00
Roland Scheidegger
d1998962ef svga: adapt to clear interface changes
this should support separate stencil/depth clears just fine.
2010-05-29 01:22:23 +02:00
Roland Scheidegger
72c77d472b softpipe: adapt to clear interface changes 2010-05-29 01:21:15 +02:00
Roland Scheidegger
9d596ea492 rbug: adapt to clear interface changes 2010-05-29 01:20:11 +02:00
Roland Scheidegger
e4de4b0755 trace: adapt to clear interface changes 2010-05-29 01:19:59 +02:00
Roland Scheidegger
25296a3ed3 identity: adapt to clear interface changes 2010-05-29 01:19:48 +02:00
Roland Scheidegger
9eae3fd992 fo: adapt to clear interface changes 2010-05-29 01:19:24 +02:00
Roland Scheidegger
821498bd6f cell: adapt to clear interface changes 2010-05-29 01:18:47 +02:00
Roland Scheidegger
c350068720 st/python: adapt to clear interface changes 2010-05-29 01:18:17 +02:00
Roland Scheidegger
783083c3b8 st/mesa: use new ability to clear only depth or stencil 2010-05-29 00:04:14 +02:00
Roland Scheidegger
a1d5131d2e util: adapt to clear interface changes 2010-05-29 00:02:05 +02:00
Roland Scheidegger
0cd70b554c gallium: clear interface changes
clears were a bit limited in gallium:
- no scissoring (OGL only) nor explicit rectangle list (d3d9)
- no color/stencil masks (OGL only)
- no separate depth/stencil clears (d3d9/d3d10/OGL)
- cannot really clear single color buffer (only with resource_fill_region)

Additionally, d3d can clear surfaces not currently bound to the framebuffer.

It is, however, not easy to find some common ground what a clear should be able
to do, due to both API requirements and also hw differences (a case which might
be able to use a special clear path on one hw might need a "normal" quad render
on another).

Hence several clear methods are provided, and a driver should implement all of
them.
- clear: slightly modified to also be able to clear only depth or stencil in a
  combined depth/stencil surface. This is however optional based on driver
  capability though ideally it wouldn't be optional. AFAIK this is in fact
  something used by applications quite a bit.
  Otherwise, for now still doesn't allow clearing with scissors/mask (or single
  color buffers)
- clearRT: clears a single (potentially unbound) color surface. This was formerly
  roughly known as resource_fill_region. mesa st will not currently use this,
  though potentially would be useful for GL ClearBuffer.
- clearDS: similar to above except for depth stencil surfaces.

Note that clearDS/clearRT currently handle can handle partial clear. This might
change however.
2010-05-28 23:57:47 +02:00
Brian Paul
d3f598a506 mesa: move all vertex array functions into varray.c 2010-05-25 21:42:13 -06:00
Brian Paul
a830eef8c2 mesa: added _mesa_GetVertexAttribIiv / AttribIuiv()
Refactor the code for all the glGetVertexAttrib() functions.
2010-05-25 21:38:02 -06:00
Brian Paul
e00d07cff6 mesa: added _mesa_VertexAttribIPointer() 2010-05-25 21:18:33 -06:00
Brian Paul
e793a24d7c mesa: new GL 3.0 VertexAttrib commands
Still need to plug in API dispatch...
2010-05-25 21:18:33 -06:00
Brian Paul
962f926112 mesa: make a bunch of shader API functions static 2010-05-25 21:18:33 -06:00
Brian Paul
a017c7ecb7 mesa: display list support for uint uniforms
Still need to plug into dispatcher...
2010-05-25 21:18:33 -06:00
Brian Paul
09c7d7bf2a mesa: consolidate some glUniform code 2010-05-25 21:18:32 -06:00
Brian Paul
07b0529e55 mesa: unsigned int uniform functions (GL3) 2010-05-25 21:18:32 -06:00
Brian Paul
91f841aefc mesa: support for unsigned int uniforms 2010-05-25 21:18:32 -06:00
Marek Olšák
f0896e7f80 r300/compiler: implement SGT+SLE opcodes
Reported-by: Gianluca Anzolin <gianluca@sottospazio.it>
2010-05-26 04:47:55 +02:00
Marek Olšák
49bac3ccd8 r300/compiler: fix dumping r5xx vertex shaders 2010-05-26 04:47:27 +02:00
Marek Olšák
5c067a6304 r300/compiler: move hardware caps to the radeon_compiler base struct
Needed for vertex shaders too.
2010-05-26 04:47:26 +02:00
Marek Olšák
f2582da3bb r300/compiler: shorten swizzle expressions 2010-05-26 04:47:26 +02:00
Dave Airlie
15496e06b7 rbug: add set sample mask passthrough.
This at least stops rbug segfaulting at startup.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-05-26 11:45:32 +10:00
Marek Olšák
e6a8513a86 r300g: more efficient finish + fix comments 2010-05-26 01:41:32 +02:00
Marek Olšák
2c072c8f72 r300g: implement fake but compliant fences 2010-05-26 01:23:11 +02:00
Marek Olšák
e1c117d87b r300g: add r300_init_render_functions, remove r300_render.h 2010-05-25 23:32:25 +02:00
Marek Olšák
73ee4e7eb2 r300g: remove r300_query.h 2010-05-25 23:32:25 +02:00
Marek Olšák
d1dac36004 r300g: remove r300_flush.h 2010-05-25 23:32:25 +02:00
Marek Olšák
85eede1b2f r300g: add r300_init_blit_functions, remove r300_blit.h 2010-05-25 23:32:25 +02:00
Marek Olšák
4d70a25964 util: update comments at blitter 2010-05-25 23:32:25 +02:00
Marek Olšák
16d1fb30a9 util: fix indentation in blitter 2010-05-25 23:32:25 +02:00
Marek Olšák
876de34c91 r300g,util: remove pipe_surface from the util_blitter_copy interface and clean up 2010-05-25 23:32:25 +02:00
Marek Olšák
59e51d9640 r300g,util: remove pipe_surface from the util_blitter_fill interface and clean up 2010-05-25 23:32:25 +02:00
Marek Olšák
85c55f2cf4 util: remove unused util_blitter_copy_surface 2010-05-25 23:32:25 +02:00
Jakob Bornecrantz
b9706886db drm_api: Remove type argument from create screen callback
With the removal of DRI1 support there where no use of this argument,
some drivers didn't even properly check it.
2010-05-25 19:05:07 +01:00
Jakob Bornecrantz
395b605e19 gallium: Remove dri1_api.h and winsys support for DRI1
Since DRI1 support was dropped from st/dri it
makes no sense to keep this code around.
2010-05-25 19:04:11 +01:00
Jakob Bornecrantz
f501230db3 st/dri: Remove DRI1 support
Nobody used it and the current code had been trough so many
changes yet never once being tested.
2010-05-25 19:03:19 +01:00
José Fonseca
378796fe11 llvmpipe: Stop relying on PIPE_FLUSH_TEXTURE_CACHE/PIPE_FLUSH_RENDER_CACHE magic.
Flush means flush, i.e., all previous operations should be visible from
other contexts.

This does not imply unswizzling tiles, since unswizzling should be done on
a needed basis for any context.
2010-05-25 14:39:25 +01:00
José Fonseca
ba404c8f2a gallivm: Choose an appropriate code generation optimization level.
'Default' unless GALLIVM_DEBUG=nopt option is set.
2010-05-25 11:48:00 +01:00
Brian Paul
e5d0c730d1 sw/xlib: NULL-out pointers after freeing image data
This fixes a double-free() error when not using a shared memory XImage.
The XDestroyImage() function frees the ximage->data buffer if non-NULL.
If we free it ourselves, we also need to NULL-out the pointer.
2010-05-24 16:21:55 -06:00
Brian Paul
8cbc1517c1 st/glx: check if deleting head of buffer list 2010-05-24 16:21:55 -06:00
Brian Paul
a949558430 meta: Convert Z value from normalized to object-space in meta code
Convert Z from a normalized value in the range [0, 1] to an
object-space Z coordinate in [-1, +1] so that drawing at the new Z
position with the default/identity ortho projection results in the
original Z value.  Used by the meta-Clear, Draw/CopyPixels and Bitmap
functions where the Z value comes from the clear value or raster
position.

Fixes piglit tests fdo23670-depth_test, quad-invariance and
glsl-orangebook-ch06-bump as well as oglc zbfunc.c.

https://bugs.freedesktop.org/show_bug.cgi?id=23670
2010-05-24 17:22:35 -04:00