Commit graph

11939 commits

Author SHA1 Message Date
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
Brian
ff08c7b032 test for presence of both front and back color vertex slots 2007-09-25 14:18:17 -06:00
Brian
608914aeb0 remove unused lookup array 2007-09-25 14:16:53 -06:00
Keith Whitwell
a37e0daeb9 First attempt at building vertex buffers post-clip.
Build a buffer of contigous vertices and indices at the backend of our
software transformation/clipping path.  This will become the mechanism
for emitting buffers of vertices to rasterization hardware.

This is similar to but not the same as the post-transform vertex cache.
In particular, these vertices are subject to clipping, culling, poly offset,
etc.  The vertices emitted will all be used by hardware.

TODOs include the actual transformation to hardware vertex formats, moving
this out of softpipe to somewhere more useful and allowing >1 primitive to
share the generated VB.
2007-09-25 13:23:20 +01:00
keithw
45b37dc078 turn off shader debug 2007-09-25 13:21:57 +01:00
keithw
0940059f8b test against -1 for front/back attrib 2007-09-25 13:21:57 +01:00
michal
c0dd02219d Enable SSE2 for FS. 2007-09-24 12:32:26 +01:00
Zack Rusin
c0afc92f00 In here we actually do want to assign it. Fix compilation. 2007-09-24 05:43:07 -04:00
Brian
1ae7373ac5 invert draw_vertex_cache_check_space() 2007-09-21 12:37:13 -06:00
Brian
ac394414fc added PSIZE 2007-09-21 12:36:59 -06:00