Commit Graph

11915 Commits

Author SHA1 Message Date
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
Brian 890125d3ad fix some post-transform vertex layout issues (bcolors, psize emitted last 2007-09-21 12:21:05 -06:00
Brian da45890818 Fix up some point size breakage. Start on fogcoord too. 2007-09-21 12:06:08 -06:00
Brian 46f606e971 reenable some clear code that was temporarily disabled 2007-09-21 11:55:28 -06:00
Brian 440a5c7c24 remove debug printfs 2007-09-21 11:54:57 -06:00
Brian a3a8887e57 comments 2007-09-21 11:34:28 -06:00
Brian 1ce50d8bd9 use VERT_ATTRIB_MAX for loop limit 2007-09-21 11:34:20 -06:00
Brian 1199605088 remove SEMANTIC_TEXCOORD 2007-09-21 11:22:34 -06:00
Brian e9259ad0d7 Get rid of TGSI_SEMANTIC_TEXCOORD and just use TGSI_SEMANTIC_GENERIC. 2007-09-21 11:20:29 -06:00
Brian 97b81eb98f rename index var from i to attr, use FRAG_ATTRIB_MAX instead of 16 2007-09-21 11:14:49 -06:00
Brian 8d987d3c4e minor renaming 2007-09-21 11:14:49 -06:00
Brian 9f96c5d619 pass vs output semantics to tgsi_mesa_compile_vp_program() to generate output DECs 2007-09-21 11:14:49 -06:00
Brian f38881c542 fix in/out typos 2007-09-21 11:14:49 -06:00
Brian ed10ece932 Pass vertex program input semantics into tgsi_mesa_compile_vp_program() to produce DCLs. 2007-09-21 11:14:49 -06:00
Brian 562c941063 fix 1/i typos 2007-09-21 11:14:49 -06:00
José Fonseca ae58f38fee Fix the doxygen target in the top-level Makefile. 2007-09-21 16:47:56 +01:00
Zack Rusin 42df29d3b9 Convert i915 to use cso semantics of alpha_test. 2007-09-21 07:06:19 -04:00
Zack Rusin 6cb87cf26f Make the alpha test state a cso. 2007-09-21 07:00:20 -04:00
Zack Rusin b0fa489eba Silence a few warnings. 2007-09-21 04:56:39 -04:00
Brian 154335d53f remove :5 form format field in pipe_surface, makes no difference at this time 2007-09-20 19:06:26 -06:00
Brian 1bf93fccdf remove old code in src_vector() 2007-09-20 15:32:18 -06:00
Brian f69b5c56fe Clean-up the TGSI_SEMANTIC tokens, introduce semantic indexes.
Still need to produce decl instructions for vertex shaders...
2007-09-20 14:47:22 -06:00
Brian 478d1e2c9c remove old/used code 2007-09-20 14:08:09 -06:00
Brian 064daf319c remove lots of dead code related to program input/output mapping 2007-09-20 14:03:00 -06:00
Brian a8834a75a5 obsolete 2007-09-20 13:58:47 -06:00