summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/texenvprogram.c
Commit message (Collapse)AuthorAgeFilesLines
* mesa: note that texcoords are generated by setup routines when pointsprite ↵Keith Whitwell2008-10-201-0/+12
| | | | enabled
* mesa: new _mesa_set_vp_override() function for driver-override of vertex programBrian Paul2008-10-101-2/+12
| | | | | | | | Patch provide by Keith. Used in state tracker by DrawPixels to indicate that the state tracker (driver) is using its own vertex program. This prevents the texenvprogram code from replacing conventional shader inputs with state vars. Fixes glDraw/CopyPixels regressions.
* mesa: replace GLuint with GLbitfield to be clearer about usageBrian Paul2008-10-071-14/+16
| | | | Also, fix up some comments to be doxygen style.
* mesa: protect against segfault in get_fp_input_mask()Keith Whitwell2008-10-071-1/+4
|
* mesa: handle vertex program enabled case also in texenvprogram.cKeith Whitwell2008-10-041-5/+4
|
* mesa: avoid generating constant vertex attributes in fixedfunc programsKeith Whitwell2008-10-031-5/+89
| | | | | | | | | | | | Keep track of enabled/active vertex attributes. Keep track of potential vertex program outputs. When generating fragment program, replace references to fragment attributes which are effectively non-varying and non-computed passthrough attributes with references to the new CURRENT_ATTRIB tracked state value. Only downside is slight ugliness in VBO code where we need to validate state twice in succession.
* mesa: shrink texenvprogram state key structKeith Whitwell2008-10-031-5/+7
|
* mesa: fix temp register allocation problems.Brian Paul2008-09-261-0/+15
| | | | Complex texcombine modes were running out of registers (>32 registers for 8 tex units).
* mesa: increase MAX_INSTRUCTIONSBrian Paul2008-09-251-4/+2
|
* mesa: fix swizzle failure, fix typoBrian Paul2008-09-251-3/+5
|
* mesa: Apply MSVC portability fixes from Alan Hourihane.José Fonseca2008-05-311-5/+5
|
* use PROGRAM_CONSTANT instead of PROGRAM_STATE_VAR when generating ↵Brian2008-01-181-1/+1
| | | | immediates/literals
* set SamplerUnit[] entry in load_texture() just to be safeBrian2007-12-141-0/+4
|
* set program->SamplersUsed bit when using a texture instructionBrian2007-12-141-1/+3
|
* Update texenvprogram.c code to use prog_cache.c routines.Brian2007-10-311-128/+7
|
* Remove ctx field from texenvprog_cacheBrian2007-10-291-12/+11
|
* Refactor _mesa_UpdateTexEnvProgram()Brian2007-10-291-32/+36
| | | | Will be replaced by _mesa_get_fixed_func_fragment_program().
* Disable the else clause which assigns the default fragment program to ↵Brian2007-10-291-0/+2
| | | | | | | | ctx->FragmentProgram._Current The _Current field should either point to the fragment program which is to be run (GLSL, ARB_f_p, fixed-func-generated, etc) or be NULL if conventional fixed-function code is to be used. Matches TNL program code.
* properly init dst reg's CondMask/Swizzle fieldsBrian2007-10-231-2/+2
|
* bump up MAX_INSTRUCTIONS and add an assertion to catch emitting too many ↵Brian2007-10-231-3/+6
| | | | instructions
* Generate a texenv fragment program if there's a GLSL vertex shader but no ↵Brian2007-10-021-1/+2
| | | | | | GLSL fragment shader. This allows Glean glsl1 test to get pretty far.
* include programopt.hBrian2007-09-251-0/+1
|
* Disable vertex shader fog, compute fog in fragment shader.Brian2007-09-251-5/+11
|
* temporarily set the FRAG_BIT_FOGC bit in InputsRead when fog is enabledBrian2007-09-181-0/+1
|
* Be more consistant with paths in #includes. Eventually, eliminate a bunch ↵Brian2007-07-041-4/+4
| | | | of -I flags.
* fix GL_DOT3_RGBA texture combiner mode in generated fragment programs (bug ↵Roland Scheidegger2007-07-031-1/+1
| | | | #11030)
* merge of glsl-compiler-1 branchBrian2007-03-261-40/+58
|\
| * Undo some changes to _mesa_UpdateTexEnvProgram(). Fixes broken i915 texturing.Brian2007-02-241-3/+9
| |
| * s/GLint/gl_state_index/, length is now 5 not 6Brian2007-02-231-9/+7
| |
| * fix g++ warnings/errorsBrian2007-01-231-2/+3
| |
| * Moved NumTexInstructions, NumTexIndirections, etc. into gl_program sinceBrian2007-01-091-9/+9
| | | | | | | | they can now apply to vertex programs.
| * Lots of assorted changes for new GLSL compiler backend.Brian2006-12-151-26/+40
| | | | | | | | New datatypes, constants, variables.
* | use _mesa_copy_instructions()Brian2007-03-221-4/+3
| |
* | fixes for C++ warnings/errorsBrian2007-01-231-2/+3
|/
* Add a size parameter to _mesa_add_unnamed_constant() andBrian Paul2006-11-151-1/+1
| | | | | _mesa_add_named_constant() to indicate vector size (1, 2, 3 or 4). Always 4 for now...
* remove debug codeBrian Paul2006-10-301-7/+0
|
* Rather than always allocating 100 instructions, put instructions into aBrian Paul2006-10-291-18/+42
| | | | | temporary buffer, then copy into a malloc'd array of the correct size. According to Glean texCombine, we never need more than 21 instructions.
* Change _mesa_init_instruction() to initialize an array of instructions.Brian Paul2006-10-291-1/+1
|
* Fix some breakage after the PROGRAM_UNDEFINED changeAlan Hourihane2006-08-101-2/+2
|
* Some structure renaming. Prefix vertex/fragment-related structs withBrian Paul2006-07-201-8/+9
| | | | "gl_" to match other structs.
* remove redundant 'const'Brian Paul2006-05-301-1/+1
|
* Add const qualifiers in a number of places.Brian Paul2006-05-231-11/+12
|
* In cache_item(), there was sizeof(void) expression.Brian Paul2006-05-231-1/+1
| | | | Replace void *key parameter with const struct state_key *
* memory usage fixes for glean/conform, use a better hash functionKeith Whitwell2006-05-221-29/+49
|
* Fix typoKeith Whitwell2006-05-221-1/+1
|
* Better caching for texenv programs.Keith Whitwell2006-05-221-15/+60
| | | | Initialize some values correctly.
* casts to fix some -pedantic warningsBrian Paul2006-04-131-4/+4
|
* fix #6072 (Keith Whitwell)Aapo Tahkola2006-03-281-12/+17
|
* fix using a tmp without asking for oneJerome Glisse2006-01-241-0/+1
|
* fix broken get_half & get_zeroAapo Tahkola2006-01-241-4/+4
|