summaryrefslogtreecommitdiffstats
path: root/src/mesa/swrast
Commit message (Collapse)AuthorAgeFilesLines
* fix comment typoBrian2007-04-071-1/+1
|
* fix color storage bug in convolution pathBrian2007-04-051-1/+1
|
* init span.y=0 to silence warningsBrian2007-04-041-0/+1
|
* Overlapping copies with zoomZ=-1 were broken. See bug 10521.Brian2007-04-041-47/+47
| | | | | Need to check for overlapping src/dest regions before computing bottom-to-top vs. top-to-bottom order.
* Restore the UseTexEnvProgram logic.Brian2007-03-272-2/+2
| | | | | Was removed during glsl-compiler work. Still need to go back and revisit this because of the interaction with fragment shaders...
* Add _swrast_span_default_secondary_color() for use with glBitmap, ↵Brian2007-03-265-2/+46
| | | | | | | glDrawPixels, etc. Secondary color wasn't getting added to post-texture color when drawing bitmaps, images. See bug 10409.
* merge from masterBrian2007-03-216-7/+25
|\
| * 1D convolution (and post-conv scale/bias) were inadvertantly applied to 2D ↵Brian2007-03-213-1/+15
| | | | | | | | image transfers.
| * fix assertion in read_depth_pixels()Nicolai Haehnle2007-03-181-1/+1
| |
| * mesa: SWAP_BUFF support when calling DrawPixels(DEPTH_COMPONENT)Xiang, Haihao2007-03-181-2/+4
| | | | | | | | or TexImage(DEPTH_COMPONENT)
| * add some rb->Data null ptr checks (bug 7205)Brian2007-03-153-3/+5
| |
* | be smarter about which fragment attribs are interpolated before running frag ↵Brian2007-03-131-11/+21
| | | | | | | | progs
* | comment about SPAN_* vs FRAG_BIT_* valuesBrian2007-03-131-0/+2
| |
* | Check if FRAG_RESULT_COLR is written and update span->interpMask, arrayMask.Brian2007-03-131-1/+8
| | | | | | | | Also, fix an assertion.
* | Implement support for GL_ARB_draw_buffers with GL_MAX_DRAW_BUFFERS > 1.Brian2007-03-114-73/+148
| | | | | | | | | | | | 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.
* | Implement gl_FrontFacing for fragment shaders.Brian2007-03-101-0/+4
| | | | | | | | | | | | 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.
* | clean-up formattingBrian2007-03-101-10/+11
| |
* | Merge branch 'origin' into glsl-compiler-1Brian2007-03-091-9/+17
|\| | | | | | | | | | | Conflicts: src/mesa/main/context.c
| * if renderbuffer ptr is null, just returnBrian2007-02-261-9/+17
| |
* | fix deferredTexture bugBrian2007-03-071-1/+1
| |
* | remove unneeded includesBrian2007-02-251-4/+0
| |
* | remove 'maxInst' parameter from _mesa_execute_program()Brian2007-02-251-2/+1
| |
* | remove unused 'element' parameter from _mesa_execute_program()Brian2007-02-251-2/+1
| |
* | Remove unneeded _Fragment/VertexShaderPresent fields, update comments.Brian2007-02-241-4/+0
| |
* | Use the new unified vertex/fragment program interpreter from prog_execute.c.Brian2007-02-221-1511/+12
| | | | | | | | Currently, DDX, DDY don't work.
* | use MAX_PROGRAM_ENV_PARAMSBrian2007-02-221-3/+3
| |
* | Merge branch 'origin' into glsl-compiler-1Brian2007-02-2212-43/+59
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * test for POT before using sample_2d_linear_repeat()Etienne Clement2007-02-141-1/+3
| |
| * silence C++ warningsBrian2007-01-235-18/+24
| |
| * fixes for C++ warnings/errorsBrian2007-01-235-23/+32
| |
| * Use GLuint instead of GLint to store intermediate Z values. Fixes problems ↵Brian2007-01-062-8/+9
| | | | | | | | when using 32-bit Z buffer.
| * Don't update span->array->z[] values from SLANG_FRAGMENT_FIXED_FRAGDEPTH.Brian2006-12-161-10/+12
| | | | | | | | | | This restores the behaviour of Mesa 6.5.1, fixing a regression in 6.5.2. See bug 9345. Revisit someday...
| * don't allow fog when using a fragment shader (bug 9346)Brian2006-12-161-2/+5
| |
* | Lots of changes to prog_print.c code.Brian2007-02-171-1/+2
| | | | | | | | Mainly, allow printing programs in either ARB, NV or "debug" formats.
* | consolidate BRA with BRK, CONTBrian2007-02-081-7/+3
| |
* | Simplify code with eval_condition(). Implement conditional BRK.Brian2007-02-081-69/+56
| |
* | Use IR_LOOP to represent do-while and for-loops.Brian2007-02-071-7/+5
| | | | | | | | Also, start moving high vs. low-level instruction selection into slang_emit.c
* | BRK and CONT work the sameBrian2007-02-061-20/+4
| |
* | Implement CONT, improve BRK.Brian2007-02-061-0/+6
| | | | | | | | | | | | | | 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).
* | BRK instruction's BranchTarget field now used for efficiently breaking out ↵Brian2007-02-051-17/+13
| | | | | | | | | | | | | | | | 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.
* | Use IR node's BranchNode field for IF/ELSE/ENDIF instructions.Brian2007-02-051-51/+6
| | | | | | | | | | | | | | 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.
* | Initial implementation of high-level flow-control instructions.Brian2007-02-051-6/+32
| | | | | | | | | | | | 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.
* | Initial support of loop and subroutine instructions.Brian2007-02-051-0/+13
| | | | | | | | | | New high-level flow-control instructions, both at IR level and GPU instructions for looping and subroutines.
* | Merge SWvertex texcoord and varying fields into attrib[] array field.Brian2007-02-0512-561/+363
| | | | | | | | | | Fragment texcoords and varying code is now unified in the point/line/triangle rasterization code. In the future, merge color, fog, etc. attribs.
* | fix maxInst argumentBrian2007-02-021-1/+2
| |
* | unroll inner loop of interpolate_varying()Brian2007-02-021-13/+22
| |
* | simplify derivative-related codeBrian2007-02-021-90/+41
| |
* | simplify interpolate_texcoords()Brian2007-02-021-262/+126
| |
* | Replace color, z, w, texture interpolants with new generic attrib interpolants.Brian2007-02-028-277/+280
| |
* | New span attrStart/attrStepX/attrStepY fields to replace fog, specular, etc. ↵Brian2007-02-028-115/+118
| | | | | | | | fields. More to come.