Age | Commit message (Collapse) | Author | |
---|---|---|---|
2008-05-14 | Consolidate texture fetch code and use partial derivatives when possible. | Brian Paul | |
picked from master | |||
2008-05-14 | mesa: sync up swrast/s_fragprog.c with master | Brian Paul | |
2007-10-26 | Re-implement GLSL texture sampler variables. | Brian | |
GLSL sampler variables indicate which texture unit to use for TEX instructions. Previously, this was baked into the fragment/vertex program and couldn't be readily changed once set. Now, SamplerUnits[] array indicates which texture unit is to be used for each sampler variable. These values are set with glUniform1i(). This is extra state that must be passed to the fragment/vertex program executor at runtime. | |||
2007-10-24 | Implement gl_PointCoord attribute for GLSL fragment shaders. | Brian | |
Contains the normalized fragment position within a point sprite. | |||
2007-07-04 | Be more consistant with paths in #includes. Eventually, eliminate a bunch ↵ | Brian | |
of -I flags. | |||
2007-06-11 | Rework _mesa_update_texture_compare_function() to only be called during | Brian | |
state validation/update. Note that we're still temporarily skipping the test for an active fragment program. Need to fix shadow2D() ... | |||
2007-06-11 | Temporarily disable the calls to _mesa_update_texture_compare_function(). | Brian | |
This fixes the depth-peel regression reported by Brad King. | |||
2007-06-07 | Add support for GL_ARB_fragment_program_shadow. | Ian Romanick | |
2007-06-07 | Fix ARB_fp spec conformance bug WRT shadow sampling. | Ian Romanick | |
The ARB_fp (and other assembly-level fragment program specs) say that the depth comparison function is always GL_NONE in fragment program mode. | |||
2007-05-11 | remove some unneeded code in init_machine() | Brian | |
2007-05-02 | changes to get DDX/DDY working again | Brian | |
2007-04-28 | only load front/back face attrib if using a shader (bug 10788) | Brian | |
2007-04-21 | undo a test/debug change | Brian | |
2007-04-19 | Put gl_program_machine into swrast structure rather than using a local variable. | Brian | |
Basically an easy way to make sure the memory gets initialized once (to zero) to avoid lots of valgrind warnings. | |||
2007-03-13 | Check if FRAG_RESULT_COLR is written and update span->interpMask, arrayMask. | Brian | |
Also, fix an assertion. | |||
2007-03-11 | Implement support for GL_ARB_draw_buffers with GL_MAX_DRAW_BUFFERS > 1. | Brian | |
GL_MAX_DRAW_BUFFERS is currently 4. Added gl_FragData[] output for fragment programs. In _swrast_write_rgba_span() loop over the color outputs/renderbuffers. | |||
2007-03-10 | Implement gl_FrontFacing for fragment shaders. | Brian | |
For the time being, we put the gl_FrontFacing value in the FOGC.Y input register. Combining FOGC and FrontFacing in one register is a bit of a hack and may need to be changed someday. | |||
2007-02-25 | remove unneeded includes | Brian | |
2007-02-25 | remove 'maxInst' parameter from _mesa_execute_program() | Brian | |
2007-02-25 | remove unused 'element' parameter from _mesa_execute_program() | Brian | |
2007-02-22 | Use the new unified vertex/fragment program interpreter from prog_execute.c. | Brian | |
Currently, DDX, DDY don't work. | |||
2007-02-22 | use MAX_PROGRAM_ENV_PARAMS | Brian | |
2007-02-17 | Lots of changes to prog_print.c code. | Brian | |
Mainly, allow printing programs in either ARB, NV or "debug" formats. | |||
2007-02-08 | consolidate BRA with BRK, CONT | Brian | |
2007-02-08 | Simplify code with eval_condition(). Implement conditional BRK. | Brian | |
2007-02-07 | Use IR_LOOP to represent do-while and for-loops. | Brian | |
Also, start moving high vs. low-level instruction selection into slang_emit.c | |||
2007-02-06 | BRK and CONT work the same | Brian | |
2007-02-06 | Implement CONT, improve BRK. | Brian | |
IR_LOOP's BranchNode ptr is the head of a linked list of CONT and BRK nodes. After emitting loop, walk over the linked list, filling in the CONT/BRK instruction's BranchTarget field (location of the ENDLOOP instruction, or one past). | |||
2007-02-05 | BRK instruction's BranchTarget field now used for efficiently breaking out ↵ | Brian | |
of loops. BRK's BranchTarget field actually points to the top of the loop, not the bottom, since we don't know the later's location yet. In the interpreter, basically do an indirect jump to update the PC. | |||
2007-02-05 | Use IR node's BranchNode field for IF/ELSE/ENDIF instructions. | Brian | |
This allows us to back-patch the IF/ELSE instruction's BranchTarget field to point to the location of the ELSE/ENDIF instructions. No longer have to search for ELSE/ENDIF in the interpreter. Also makes it trivial to translate IF/ELSE instructions into conditional/unconditional BRA instructions. | |||
2007-02-05 | Initial implementation of high-level flow-control instructions. | Brian | |
IF/ELSE/ENDIF and BEGIN_LOOP/END_LOOP/BREAK instructions seem to work. Disabled by default though until better tested. Implemented IR_NOT, but needs optimization. | |||
2007-02-05 | Initial support of loop and subroutine instructions. | Brian | |
New high-level flow-control instructions, both at IR level and GPU instructions for looping and subroutines. | |||
2007-02-02 | fix maxInst argument | Brian | |
2007-02-02 | simplify derivative-related code | Brian | |
2007-02-02 | Replace color, z, w, texture interpolants with new generic attrib interpolants. | Brian | |
2007-02-02 | New span attrStart/attrStepX/attrStepY fields to replace fog, specular, etc. ↵ | Brian | |
fields. More to come. | |||
2007-02-01 | New SWspanarrays attribs[] array. | Brian | |
Replace texcoord[], varying[], etc. arrays with single attribs[] array, indexed by FRAG_ATTRIB_* values. Eliminates need to copy data into fragment program machine input registers. Will lead to future clean-ups. | |||
2007-02-01 | additional assertions, bump up MAX_EXEC | Brian | |
2007-01-28 | noise functions | Brian | |
2007-01-25 | fixes, clean-ups, transpose span->varying array indexing | Brian | |
2007-01-23 | fix g++ warnings/errors | Brian | |
2007-01-20 | Initial implementation of OPCODE_IF/ELSE/ENDIF instructions. | Brian | |
2007-01-17 | Added OPCODE_INT to convert 4 floats to 4 ints. | Brian | |
2007-01-09 | more debug code (disabled) | Brian | |
2007-01-08 | check if _Current == NULL for TXB | Brian | |
2006-12-18 | Added instruction counter to catch infinite loops (temporary). | Brian | |
2006-12-16 | fix comment, handle NOP | Brian | |
2006-12-15 | Renamed s_nvfragprog.[ch] to s_fragprog.[ch] | Brian | |
2006-12-14 | Renamed from s_nvfragprog.[ch] | Brian | |