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