summaryrefslogtreecommitdiff
path: root/src/mesa/shader/slang/slang_builtin.c
AgeCommit message (Collapse)Author
2008-07-29mesa: glsl: rework swizzle storage handlingBrian Paul
Build on the heirarchal approach implemented for arrays/structs.
2008-07-29mesa: rework array/struct addressing code.Brian Paul
The slang_ir_storage type now has a pointer to parent storage to represent storage of an array element within an array, or a field within a struct. This fixes some problems related to addressing of fields/elements in non- trivial cases. More work to follow.
2007-11-23Fix parsing of gl_FrontLightModelProduct.sceneColor, don't segfault on ↵Brian
variable array indexes.
2007-07-04Be more consistant with paths in #includes. Eventually, eliminate a bunch ↵Brian
of -I flags.
2007-03-14s/Tranpose/Transpose/Brian
2007-03-08Rework matrix-related code.Brian
GLSL matrices are stored in column-major order while GL_ARB_vertex/fragment_program use row-major. So, need to use STATE_MATRIX_TRANSPOSE for built-in matrices. Unfortunately, this means that the expression M * V isn't very efficient since we need to extract the rows out of M. And that's the typical expression for vertex transformation: gl_ModelViewProjectionMatrix * gl_Position. Solve this inefficiency by looking for M*V expressions and replacing them with V*Transpose(M). Also, add support for GLSL 1.20's MatrixTranspose, Inverse and InverseTranspose matrices.
2007-03-08fix ProjectionMatrix typoBrian
2007-03-08fix gl_TextureMatrix indexingBrian
2007-03-07add missing gl_Point state, fix IR storage bugBrian
2007-03-07s/diffuset/diffuse/Brian
2007-02-23replace GLint with gl_state_indexBrian
2007-02-23Replace slang_ir_node::Target w/ Field. Remove Comment field. Clean-up.Brian
2007-02-22Undo some STATE_POINT/FOG changes. Max length of state token array is now 5.Brian
2007-02-21remove unneeded #includesBrian
2007-02-21fix copy&paste errorsBrian
2007-02-21Reimplement the _slang_alloc_statevar() function.Brian
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.
2007-02-21adjustments to STATE_ token layout/format so token[1] is always the array indexBrian
2007-02-21checkpoint overhaul of pre-defined uniform codeBrian
2007-02-20implement support for pre-defined uniform structs (state vars)Brian