Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge branch 'origin' into glsl-compiler-1 | Brian | 2007-03-09 | 1 | -0/+1 |
|\ | | | | | | | | | | | Conflicts: src/mesa/main/context.c | ||||
| * | Propogate UsesKill information. | Keith Whitwell | 2007-03-04 | 1 | -0/+1 |
| | | |||||
* | | fix fog breakage | Brian | 2007-02-23 | 1 | -4/+2 |
| | | |||||
* | | replace GLint with gl_state_index | Brian | 2007-02-23 | 1 | -7/+11 |
| | | |||||
* | | updated debug code | Brian | 2007-02-22 | 1 | -210/+18 |
| | | |||||
* | | Undo some STATE_POINT/FOG changes. Max length of state token array is now 5. | Brian | 2007-02-22 | 1 | -4/+2 |
| | | |||||
* | | Merge branch 'origin' into glsl-compiler-1 | Brian | 2007-02-22 | 1 | -2/+2 |
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/main/state.c src/mesa/shader/program.c src/mesa/shader/program.h src/mesa/shader/programopt.c src/mesa/shader/slang/slang_execute.c src/mesa/sources src/mesa/swrast/s_arbshader.c src/mesa/swrast/s_context.c src/mesa/swrast/s_span.c src/mesa/swrast/s_zoom.c src/mesa/tnl/t_context.c src/mesa/tnl/t_save_api.c src/mesa/tnl/t_vb_arbprogram.c src/mesa/tnl/t_vp_build.c src/mesa/tnl/t_vtx_eval.c | ||||
| * | optimize generated vertex programs a bit | Roland Scheidegger | 2007-02-09 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | Use new internal state to avoid per-vertex normalization of static spot direction vector. Use internal state for simpler per-vertex fog computations (MAD instead of SUB/MUL for linear fog, EX2 instead of POW for EXP/EXP2 fog). Simplify point size calc (2 MADs instead of MOV, MUL, MUL, DP3), and while there fix it up (RSQ instead of RCP). All untested... | ||||
| * | Replace __extension__ with LONGSTRING. | Brian | 2006-12-14 | 1 | -1/+1 |
| | | |||||
* | | more minor changes to STATE_ indexing | Brian | 2007-02-21 | 1 | -3/+9 |
| | | |||||
* | | adjustments to STATE_ token layout/format so token[1] is always the array index | Brian | 2007-02-21 | 1 | -19/+28 |
| | | |||||
* | | silence uninitialized var warning | Brian | 2007-02-01 | 1 | -2/+2 |
| | | |||||
* | | clean up a bunch of program parameter stuff | Brian | 2007-01-09 | 1 | -3/+3 |
| | | |||||
* | | Moved NumTexInstructions, NumTexIndirections, etc. into gl_program since | Brian | 2007-01-09 | 1 | -6/+6 |
| | | | | | | | | they can now apply to vertex programs. | ||||
* | | move TexturesUsed[] into gl_program since vertex programs/shaders can use ↵ | Brian | 2007-01-04 | 1 | -1/+1 |
| | | | | | | | | textures nowadays | ||||
* | | Updated includes. | Brian | 2006-12-14 | 1 | -1/+3 |
|/ | |||||
* | Add a size parameter to _mesa_add_unnamed_constant() and | Brian Paul | 2006-11-15 | 1 | -1/+1 |
| | | | | | _mesa_add_named_constant() to indicate vector size (1, 2, 3 or 4). Always 4 for now... | ||||
* | #define LONGSTRING __extension__ in imports.h and use it to silence gcc | Brian Paul | 2006-11-15 | 1 | -9/+6 |
| | | | | warnings about long string literals. | ||||
* | Change _mesa_init_instruction() to initialize an array of instructions. | Brian Paul | 2006-10-29 | 1 | -3/+3 |
| | |||||
* | Program instructions are initialized before parsing so no need to set | Brian Paul | 2006-10-29 | 1 | -7/+1 |
| | | | | | | Abs, NegateAbs, CondMask and CondSwizzle fields to defaults here. CondMask was getting mis-set. Removing the incorrect assignment improves fragment program speed by 15%. | ||||
* | for VERTEX_ATTRIB_WEIGHT, use break, not return | Brian Paul | 2006-09-06 | 1 | -1/+2 |
| | |||||
* | Hack for Warcraft (bug 8060): allow 'vertex.weight' to be referenced in | Brian Paul | 2006-09-05 | 1 | -0/+10 |
| | | | | | vertex program, even though it's not really supported. Results will be undefined, but Warcraft doesn't actually use the attribute. | ||||
* | fix typo in enable_parser_extensions(): s/point_parameters/vertex_blend/ | Brian Paul | 2006-09-05 | 1 | -1/+1 |
| | |||||
* | Consolidate common case of _mesa_set_program_error() followed by _mesa_error() | Brian Paul | 2006-09-05 | 1 | -248/+172 |
| | | | | | | in new program_error() function. Add const qualifiers in many places. Reorder some debug code to prevent referencing free'd memory. | ||||
* | Check that we don't try to reference more than one target of a texture unit.texmem_0_2_20060912 | Brian Paul | 2006-08-30 | 1 | -1/+17 |
| | | | | | For example, referencing both "texture[0], 2D" and "texture[0], CUBE" in one program is an error. | ||||
* | fix initialization of native resource usage of vertex/fragment programs | Roland Scheidegger | 2006-08-30 | 1 | -0/+10 |
| | |||||
* | use _mesa_alloc_instructions() | Brian Paul | 2006-08-25 | 1 | -2/+1 |
| | |||||
* | update MAX_INSTRUCTIONS limit | Brian Paul | 2006-08-24 | 1 | -1/+4 |
| | |||||
* | use _mesa_realloc_instructions() | Brian Paul | 2006-08-24 | 1 | -6/+6 |
| | |||||
* | Some structure renaming. Prefix vertex/fragment-related structs with | Brian Paul | 2006-07-20 | 1 | -3/+3 |
| | | | | "gl_" to match other structs. | ||||
* | propagate errors from parse_generic_attrib_num in parse_attrib_binding (-> ↵ | Tilman Sauerbeck | 2006-06-28 | 1 | -2/+4 |
| | | | | don't segfault when you're trying to access invalid generic attributes | ||||
* | don't do the check for >= MAX_VERTEX_PROGRAM_ATTRIBS twice, it's already ↵ | Tilman Sauerbeck | 2006-05-29 | 1 | -6/+0 |
| | | | | done in parse_generic_attrib_num() | ||||
* | generic attribute 0 wasn't handled correctly (Jesse Allen) | Brian Paul | 2006-05-29 | 1 | -0/+8 |
| | |||||
* | fix second memory leak (bug 5557) | Brian Paul | 2006-04-28 | 1 | -4/+5 |
| | |||||
* | fix first memory leak (bug 5557) | Brian Paul | 2006-04-28 | 1 | -0/+5 |
| | |||||
* | No longer alias generic vertex attribs with conventional attribs for ↵ | Brian Paul | 2006-04-25 | 1 | -1/+6 |
| | | | | GL_ARB_vertex_program. | ||||
* | More GLSL code: | Michal Krol | 2006-04-11 | 1 | -2/+2 |
| | | | | | | | | | | | | - use macros to access and modify render inputs bit-field; - un-alias generic vertex attributes for ARB vertex calls; - use MAX_VERTEX_PROGRAM_ATTRIBS (NV code) or MAX_VERTEX_ATTRIBS (ARB code) in place of VERT_ATTRIB_MAX; - define VERT_ATTRIB_GENERIC0..15 for un-aliased vertex attributes for ARB_vertex_shader; - fix generic attribute index range check in arbprogparse.c; - interface GLSL varyings between vertex and fragment shader; - use 64-bit optimised bitset (bitset.h) for render inputs; | ||||
* | move NumNativeAlu/TexInstruction assignments (Ewald Snel) | Brian Paul | 2006-03-29 | 1 | -6/+3 |
| | |||||
* | ARL dst idx was undefined. | Aapo Tahkola | 2006-03-22 | 1 | -1/+2 |
| | |||||
* | C++ fixes, mostly casts (Stephane Conversy) | Brian Paul | 2005-12-06 | 1 | -5/+5 |
| | |||||
* | Make Saturate a 2-bit field again, renamed to SaturateMode with three | Brian Paul | 2005-11-20 | 1 | -32/+32 |
| | | | | possible values: SATURATE_OFF, SATURATE_ZERO_ONE and SATURATE_PLUS_MINUS_ONE. | ||||
* | remove incorrect cast | Brian Paul | 2005-11-19 | 1 | -1/+1 |
| | |||||
* | Remove the _mesa_parse_arb_vertex/fragment_program() functions into | Brian Paul | 2005-11-19 | 1 | -107/+247 |
| | | | | | | | arbprogparse.c and remove arbvertparse.[ch] and arbfragparse.[ch]. Clean up quite a bit of the arb parsing code. Rewrite parser extension code to avoid a mess of string operations every time the parser was used. | ||||
* | Move stuff common to vertex/fragment_program into the base class, including: | Brian Paul | 2005-11-12 | 1 | -17/+15 |
| | | | | | | Instructions, InputsRead, OutputsWritten, and Parameters. Also, added debug functions: _mesa_print_instruction(), _mesa_print_program_parameters() and revamp _mesa_print_program(). | ||||
* | remove unneeded #includes | Brian Paul | 2005-11-08 | 1 | -8/+2 |
| | |||||
* | Unify vertex/fragment program instuctions. | Brian Paul | 2005-11-05 | 1 | -86/+85 |
| | | | | Based on patch by Ian (#4967) but also unify instruction opcodes. | ||||
* | Streamline code generation by using a fixed size instruction buffer in | Brian Paul | 2005-11-03 | 1 | -65/+17 |
| | | | | arb_program struct. | ||||
* | fix typo, minor clean-ups | Brian Paul | 2005-11-03 | 1 | -5/+5 |
| | |||||
* | Rename FRAG_OUTPUT_* tokens to FRAG_RESULT_* to match vertex program convention | Brian Paul | 2005-11-02 | 1 | -3/+3 |
| | |||||
* | Several fp and vp tweaks: | Keith Whitwell | 2005-11-01 | 1 | -0/+3 |
| | | | | | | | | | | | | | | | | | | | | | | - Renumber VERT_RESULT_* values so that they match the numbers of the corresponding FRAG_ATTRIB_ values. - Add ctx->VertexProgram._Current and FragmentProgram._Current values which point to either the current client-supplied program if enabled, or otherwise to the current mesa-internal program. Thus this program is always the correct one for the current state, providing that the mesa flags to turn on automatic generation are enabled. - Add callbacks to ctx->Driver.BindProgram() in texenvprogram.c and t_vp_build.c so that the driver knows when the generated program changes. This is cleaner than trying to code all the possible _NEW_* flags into the driver, and more precise as well. - Add a UsesKill flag to identify fragment programs with that instruction, as these can require special treatment. - Move the FRAG_OUTPUT values to mtypes.h, near to similar defn's. |