Commit graph

13955 commits

Author SHA1 Message Date
Michel Dänzer
cc85573a9f gallium: Fencing fix.
Make sure the struct pipe_fence_handle* we point st_flush() to is initialized
to NULL, so winsys->fence_reference() doesn't try to unreference a random
struct pipe_fence_handle* pointer.
2008-04-01 13:05:24 +01:00
Michel Dänzer
2df9941368 scons: Fix test for building dri/intel winsys. 2008-04-01 13:05:09 +01:00
Brian
d83e0c45be cell: update some of the CAP, texformat queries 2008-03-31 21:16:48 -06:00
Brian
e6c981f22c cell: more work for multi-texture support 2008-03-31 21:16:48 -06:00
Brian
5553a3b675 cell: set cell->num_textures in cell_set_sampler_textures() 2008-03-31 21:16:48 -06:00
José Fonseca
686a6c7468 gallium: Do not assume that buffers are freed in the same order they are fenced.
Also free buffers as soon as possible.

This short term fix corrects the fenced list behavior but it will impact on performance.
The long term fix is probably replace the linked list (legacy from the bufpool code) by
a binary tree.
2008-04-01 10:46:04 +09:00
Brian
14452aee73 cell: initial work to support multi-texture 2008-03-31 17:38:21 -06:00
Brian
84c2821d2a cell: added const qualifier 2008-03-31 16:54:31 -06:00
Brian
58b6690cf8 cell: updated comments: s/test/SPE/ 2008-03-31 16:44:56 -06:00
Brian
ab8bcc4ec6 cell: implement logicop/output for PIPE_FORMAT_B8G8R8A8_UNORM
Remote display to my usual terminal shows the right colors again.
Not 100% sure about the shuffle control words, but they seem to work.
2008-03-31 16:36:25 -06:00
José Fonseca
8a81429fa8 gallium: Compute YCBCR bit depth. 2008-04-01 07:22:10 +09:00
Brian
6b0be38a6c gallium: used inverted bitmap texture to simplify the fragment shader.
"Off" bits get stored as texel=0xff and "on" bits get stored as texel=0x0.
Then use KIL -tmp to kill the off bits and keep the on bits.
This shortens the fragment program by two instructions.
2008-03-31 15:12:14 -06:00
Brian
23b03c536d gallium: updated comment for bypass_vs 2008-03-31 15:12:01 -06:00
Markus Amsler
9136747a2b fix parsing bug involving comments at the end of ARB v/f programs 2008-03-31 14:58:11 -06:00
Brian
ddc0f91bfc gallium: use cso_save/restore_sampler_textures() functions 2008-03-31 14:38:27 -06:00
Brian
7139b8ef78 gallium: draw_passthrough.c is obsolete - removed 2008-03-31 14:20:16 -06:00
Brian
6a382250a1 gallium: set the bypass_vs flag now
The glBitmap vertex shader is a no-op, but we still have to specify it in
order to convey the number of inputs/outputs.
2008-03-31 14:18:36 -06:00
Brian
594dab4769 gallium: move the test for bypass_vs into the vs_XXX_run() functions
Also:
1. Added an identity_viewport flag to skip viewport transformation when it
has no effect.  Might also add an explicit bypass_viewport flag someday.
2. Separate the code for computing clip codes and doing the viewport transform.
Predicate them separately.
Note: even if bypass_vs is set, we still look at the shader to determine the
number of inputs and outputs.
2008-03-31 14:14:30 -06:00
Brian
9cbd840043 gallium: draw_passthrough.c is not used anymore 2008-03-31 14:13:09 -06:00
Brian
499d8aaa47 gallium: draw_passthrough.c is not used anymore 2008-03-31 14:06:42 -06:00
Brian
e66cb602b7 gallium: turn on clipping for bitmaps
Bitmaps can extend beyond window edges so we need to clip.
Also, move some state atom vars to st_context to be a bit more efficient.
2008-03-31 12:18:20 -06:00
José Fonseca
baab98a637 gallium: Eliminate p_winsys::printf
Not convenient and almost not used at all. Better replacements in p_debug.h
2008-03-31 17:28:33 +09:00
Michal Krol
63950b11b6 draw: Do not run full pipeline when flatshade_first for point primitives. 2008-03-30 23:21:20 +02:00
Michal Krol
fc98880144 draw: Fix bypass_vs semantic misuse. 2008-03-30 22:48:49 +02:00
Brian Paul
a52c0416d1 gallium: Set vertex state/buffers en-mass. 2008-03-29 14:41:03 +01:00
José Fonseca
f10016b9a0 gallium: Fix some MSVC warnings. 2008-03-29 11:32:29 +09:00
Brian
737e34aee5 gallium: begin some bounding box code for bitmap cache 2008-03-28 18:41:10 -06:00
Brian
f6908a766d gallium: added an (int) cast in setup_bitmap_vertex_data() to fix a signed/unsigned arithmetic problem
Negative values became very large uints.
2008-03-28 18:18:55 -06:00
Brian
cbfe6ee5d5 gallium: Fix computation of Z values when not using early Z.
This fixes the missing bitmaps in the engine and fogcoord demos.
2008-03-28 15:22:34 -06:00
Brian
5a460c7391 gallium: don't call st_flush_bitmap_cache() if the only change is _NEW_PACKUNPACK state 2008-03-28 15:17:50 -06:00
Brian
7292db2138 gallium: disable a debug hack 2008-03-28 14:56:05 -06:00
Brian
c62b197b52 gallium: implement a glBitmap cache
The bitmap cache attempts to accumulate a series of glBitmap calls in a
buffer to effectively render a whole bunch of bitmaps at once.

The cache can be disabled, if needed, by setting UseBitmapCache=GL_FALSE.
2008-03-28 14:53:47 -06:00
Brian Paul
13041da714 mesa: fix texture/renderbuffer mix-up in test_attachment_completeness() 2008-03-28 13:10:16 -06:00
Brian Paul
de3634fca8 gallium: re-work texture format selection code
Use same code for choosing texture format and renderbuffer format.
2008-03-28 13:09:19 -06:00
Roland Scheidegger
5615ab78b0 gallium: remove redundant compare bit in sampler state 2008-03-28 15:43:00 +01:00
Michal Krol
4e7bcaa4c2 gallium: Bump PIPE_MAX_SAMPLERS to 16.
We need it to fulfil D3D minimum requirements.
2008-03-28 12:31:35 +01:00
Brian
5935b16ff5 If visual is 32bpp, set visual->alphaBits = 8.
This works since we always use XImages for color buffers.  It wouldn't always
work for Windows/Pixmaps.
2008-03-27 21:11:45 -06:00
Brian
39038c1169 gallium: replace PIPE_ATTRIB_MAX with PIPE_MAX_ATTRIBS
The later follows the naming scheme of other limits.
Keep the old definition until all possible usage is updated.
2008-03-27 17:41:55 -06:00
Brian Paul
37da2d6851 gallium: updated/improved comments, minor re-formatting 2008-03-27 17:18:25 -06:00
Brian
bdf279b555 consolidate some parsing functions that were pretty much identical for vertex/fragment programs
cherry-picked from master
2008-03-27 16:19:46 -06:00
Brian
5052dabb44 mesa: misc sync-up with master 2008-03-27 16:05:40 -06:00
Brian
d46ac956db raise GL_INVALID_OPERATION if glProgramString compilation fails
cherry-picked from master
2008-03-27 16:04:20 -06:00
Brian
4adee848a6 Fix the compile of disabled DEBUG_PARSING code.
cherry-picked from master
2008-03-27 15:54:44 -06:00
Brian
a072094bf0 make sure state token values are fully initialized
cherry-picked from master
2008-03-27 15:52:00 -06:00
Brian
50a20d4729 added program_error2() function for better error reporting
cherry-picked from master
2008-03-27 15:51:07 -06:00
Brian
7b91d87540 Fix state.texgen parsing error (bug 12313).
Replace *(*inst++) with *(*inst)++ in a few places.

Cherry-picked from master.
2008-03-27 15:48:54 -06:00
Brian
6f8286163c gallium: Update calls to the simple shader functions 2008-03-27 15:43:32 -06:00
Brian
dccbfd8bf0 gallium: return pipe_shader_state from the simple shader functions
Allows us to fix a mem leak (tokens array).
2008-03-27 15:43:32 -06:00
Brian
89222ee49d gallium: fix Element() macro redefinition warning 2008-03-27 15:43:32 -06:00
Brian
ba49fa39f3 gallium: fix incorrect types for shaders 2008-03-27 15:43:32 -06:00