summaryrefslogtreecommitdiffstats
path: root/src/mesa/shader/slang/slang_builtin.h
Commit message (Collapse)AuthorAgeFilesLines
* mesa: move shader/slang/* sources to main/slang/*Brian Paul2010-06-101-64/+0
| | | | Reduce the source tree depth a bit.
* glsl: add more vertex/fragment output info helpersBrian Paul2010-04-011-0/+10
|
* glsl: move predefined shader input/output info/code to slang_builtin.cBrian Paul2009-08-121-0/+14
| | | | | This is a more logical place for this code. Also add some functions for querying vertex shader input names, types, etc.
* mesa: allow variable indexing into the predefined uniform variable arraysBrian Paul2008-12-301-1/+2
| | | | | | | | | | | | | | | | | | | This allows code such as "vec4 a = gl_LightSource[i].ambient;" to work. When a built-in uniform array is indexed with a variable index we need to "unroll" the whole array into the parameter list (aka constant buffer) because we don't know which elements may be accessed at compile-time. In the case of the gl_LightSource array of size [8], we emit 64 state references into the parameter array (8 elements times 8 vec4s per gl_LightSourceParameters struct). Previously, we only allowed constant-indexed references to uniform arrays (such as gl_LightSource[2].position) which resulted in a single state reference being added to the parameter array, not 64. We still optimize this case. Users should be aware that using "gl_LightSource[i].ambient" in their shaders is a bit expensive since state validation will involve updating all 64 light source entries in the parameter list.
* Be more consistant with paths in #includes. Eventually, eliminate a bunch ↵Brian2007-07-041-1/+1
| | | | of -I flags.
* Reimplement the _slang_alloc_statevar() function.Brian2007-02-211-11/+0
| | | | | | After several tries at making a table-based system for examining pre-defined uniforms to find statevar indexes, give up and do it the simple way (lots of strcmp() calls). Not terribly elegant, but perfectly functional.
* checkpoint overhaul of pre-defined uniform codeBrian2007-02-211-0/+5
|
* implement support for pre-defined uniform structs (state vars)Brian2007-02-201-0/+45