Commit graph

9802 commits

Author SHA1 Message Date
Brian
91550f0a17 remove unused tgsi_exec_cond_* types 2007-09-29 09:51:11 -06:00
Brian
fc38c82771 Initial implementation of IF/ELSE/ENDIF using conditional masking.
mach->CondMask controls writing to each of the 4 components in a quad.
mach->CondMaskStack handles nested conditionals.
Only a few of the micro ops (add/sub/mul/store) have been updated to obey CondMask at this time.
2007-09-28 21:04:34 -06:00
Brian
ae7f200788 fix bug causing unnecessary translations 2007-09-28 20:31:24 -06:00
Brian
bbcbd362a9 remove old debug code, fix warning 2007-09-28 16:20:10 -06:00
Brian
78876bf61c fix st_use_program() 2007-09-28 16:19:51 -06:00
Brian
636480cc9c Instead of linked program pairs, keep a list of vertex programs translated for each fragment program. 2007-09-28 15:39:39 -06:00
Brian
f14ece2d2c Use texture->first_level, not 0, when not mipmapping.
Fixes crash when GL_BASE_LEVEL!=0.
Also, remove old assertion.
2007-09-28 15:39:39 -06:00
Zack Rusin
8731e391f5 Use sse only if GALLIUM_SSE is defined 2007-09-28 12:29:30 -04:00
Zack Rusin
a1a989f0be Redoing the way we handle vertex shaders for the draw module. 2007-09-28 12:29:22 -04:00
Zack Rusin
f78193f444 Remove gl dependency from the x86 assembler code 2007-09-28 12:29:14 -04:00
Zack Rusin
901577e07f Revert "Redoing the way we handle vertex shaders for the draw module."
This reverts commit 6dcfddb8e2.
2007-09-28 12:28:16 -04:00
Zack Rusin
f2a33a63f1 Revert "Use sse only if GALLIUM_SSE is defined"
This reverts commit 57b5d36057.
2007-09-28 12:28:06 -04:00
Zack Rusin
57b5d36057 Use sse only if GALLIUM_SSE is defined 2007-09-28 09:12:20 -04:00
Zack Rusin
6dcfddb8e2 Redoing the way we handle vertex shaders for the draw module. 2007-09-28 09:12:20 -04:00
Brian
7966e479dc set miptree pitch to region pitch after allocating the region in st_miptree_create()
This fixes rendering with small (4x4) textures with softpipe.
Haven't yet tested with i915.
2007-09-27 16:33:01 -06:00
Brian
28b315dc1a comments 2007-09-27 16:31:13 -06:00
keithw
e0271e16da remove dead code 2007-09-27 16:20:31 +01:00
keithw
48385cd13a reduced debug 2007-09-27 12:50:02 +01:00
Keith Whitwell
82e2d32268 Fix some compiler warnings with -pedantic 2007-09-27 07:56:23 +01:00
Keith Whitwell
65e3af51ef Enable codegen based whenever __i386__ is defined. 2007-09-27 07:56:23 +01:00
keithw
035a824730 fix merge 2007-09-27 07:56:23 +01:00
Keith Whitwell
c5cfa63988 disable debug 2007-09-27 07:56:23 +01:00
keithw
e078f910dc restore primitive trimming in sp_draw_arrays.c 2007-09-27 07:56:23 +01:00
Keith Whitwell
08589f7105 Make flushing more lazy in the draw module. 2007-09-27 07:56:23 +01:00
keithw
7770acf8d4 Use Gallium in the renderer string 2007-09-27 07:56:22 +01:00
Brian
5c83f13719 Do image flipping in do_copy_texsubimage() and GL pixel transfer ops (except convolution). 2007-09-26 18:54:20 -06:00
Brian
c6717a8642 fallback_copy_texsubimage() basically works now (at least w/ Xlib driver).
Have to map regions before calling get_tile()/put_tile().
Need to invert srcY of glCopyTexSubImage() depending on renderbuffers
up/down orientation.
Still need to invert image in fallback_copy_texsubimage() when needed.
2007-09-26 18:39:14 -06:00
Brian
78008dbcaa added a8r8g8b8_put_tile() 2007-09-26 18:34:43 -06:00
Brian
fcd4eeb743 don't use scissored bounds in _mesa_clip_copytexsubimage() 2007-09-26 18:34:13 -06:00
Brian
038cb561eb More work on glCopyTexSubImage.
Start sketching out a fallback path based on surface->get_tile(), put_tile()
which will do format convertion and GL's pixel transfer ops.
2007-09-26 17:57:15 -06:00
Brian
b27498c7ca checkpoint: glCopyTexImage work 2007-09-26 17:18:42 -06:00
Brian
b3bb1e3ebf s/_mesa_copy_rect/copy_rect/ 2007-09-26 17:03:40 -06:00
Brian
324ecadbfd Added new _mesa_clip_copytexsubimage() function to do avoid clipping down in the drivers.
This should probably be pulled into main-line Mesa...
2007-09-26 17:03:11 -06:00
Brian
bad4e10af7 check for _NEW_PROGRAM mesa state (fixes arbfplight) 2007-09-26 15:34:51 -06:00
Brian
715e5edff6 better debugging 2007-09-26 15:34:31 -06:00
Brian
960fe21008 comments, null ptr checks, etc. 2007-09-25 17:07:59 -06:00
Brian
b28f4a27d5 don't apply pixelzoom to bitmaps 2007-09-25 17:03:19 -06:00
Brian
0dfa5506a3 st_draw_vertices() no longer needs attribs[] array parameter 2007-09-25 16:56:35 -06:00
Brian
ccff14de0d Simple implementation of glBitmap rendering.
Create a texture matching the bitmap image and use a fragment program
to modulate current raster color by the boolean-valued texture.  Need to
eventually use fragment culling (see comments in code).
2007-09-25 16:52:38 -06:00
Brian
02ea8b8141 re-org/prep for glBitmap 2007-09-25 15:48:14 -06:00
Brian
b5051bf6bb clean-up #includes 2007-09-25 15:21:19 -06:00
Brian
38504011c8 better debug output 2007-09-25 15:20:58 -06:00
Brian
83fad68ec1 include programopt.h 2007-09-25 15:20:04 -06:00
Brian
3bf8d2ac71 Disable vertex shader fog, compute fog in fragment shader. 2007-09-25 15:18:51 -06:00
Brian
07f31a29b4 some clean-up of ST_NEW_ shader flags 2007-09-25 14:46:49 -06:00
Brian
1201eb8529 disable TGSI_DEBUG 2007-09-25 14:46:18 -06:00
Brian
6b1d2fa815 replaced by st_atom_shader.c 2007-09-25 14:30:26 -06:00
Brian
40c543eb71 Translate mesa vertex/fragment programs to TGSI programs at same time to do proper linking.
Previously, programs were translated independently during validation.
The problem is the translation to TGSI format, which packs shader
input/outputs into continuous slots, depends on which vertex program is
being paired with which fragment shader.  Now, we look at the outputs
of the vertex program in conjunction with the inputs of the fragment shader
to be sure the attributes match up correctly.

The new 'linked_program_pair' class keeps track of the associations
between vertex and fragment shaders.  It's also the place where the TGSI
tokens are kept since they're no longer per-program state but per-linkage.

Still a few loose ends, like implementing some kind of hash/lookup table
for linked_program_pairs.
2007-09-25 14:29:11 -06:00
Brian
f9ed2fdaac translate Mesa programs to TGSI programs (formerly in st_atom_[fv]s.c) 2007-09-25 14:22:13 -06:00
Brian
07ef3e4245 vertex/fragment shader state and linking 2007-09-25 14:21:18 -06:00