Commit graph

14198 commits

Author SHA1 Message Date
Patrice Mandin
a514aeb778 nv30: update miptree stuff for texturing 2008-03-18 13:20:59 +01:00
Patrice Mandin
3394ba65b1 nv30: another 2 rt, and set viewport tx origin, so we render at the proper place \o/ 2008-03-17 19:03:38 +01:00
Patrice Mandin
a33da10b6c nv30: only 2 render targets 2008-03-17 18:13:40 +01:00
Ben Skeggs
6b32699001 nv40: a few more fp opcodes 2008-03-17 23:05:46 +11:00
Ben Skeggs
f93386de0f nouveau: create fence object when allocating pushbuf, instead of submit 2008-03-17 14:45:19 +11:00
Ben Skeggs
767cd2ed6e nv40: workaround main swtnl breakage
Not sure where the real bug is here yet, but for now this gives us correct
rendering in far more cases than previously.
2008-03-17 13:53:44 +11:00
Stephane Marchesin
5c15b1276e nv10: fixes. 2008-03-17 03:32:07 +01:00
Stephane Marchesin
b2f01b0777 nouveau: latest header. 2008-03-17 03:14:11 +01:00
Ben Skeggs
e1cf3f00e5 nv40: simple swtnl path (half broken, but getting there) 2008-03-16 18:13:34 +11:00
Ben Skeggs
7d2c63e909 nv10: fix build after merge 2008-03-16 12:55:13 +11:00
Ben Skeggs
c4354f8460 Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1 2008-03-16 12:49:46 +11:00
Patrice Mandin
5e17088ee3 cso_context_destroy calls bind_state functions with NULL parameter 2008-03-15 16:45:49 +01:00
Stephane Marchesin
d493203045 nv10. 2008-03-15 05:37:57 +01:00
Stephane Marchesin
509044609d nouveau: latest header. 2008-03-15 04:43:12 +01:00
Stephane Marchesin
9a3320e079 nv30: only 2 RTs. 2008-03-15 04:42:48 +01:00
José Fonseca
cb98f71d42 gallium: Ensure we don't add null objects to the table, as they mark empty handles. 2008-03-15 01:35:18 +00:00
Brian Paul
c2bf23b837 mesa: clamp point size in vertex program when computing attenuated size 2008-03-14 17:47:11 -06:00
Brian Paul
cbf42c45a1 gallium: if point size not computed per vertex, apply size clamp immediately.
Fixes glean pointAtten failure.
2008-03-14 17:45:27 -06:00
Brian
5a09ad8248 gallium: add explicit control for point sprites (convert points to textured quads)
New draw_enable_point_sprites() function.
Fixes spriteblast.c demo
2008-03-14 16:13:35 -06:00
Brian
344356a0ed gallium: remove DOS carriage returns 2008-03-14 16:01:24 -06:00
Brian
08e341e5dc gallium: remove DOS carriage returns 2008-03-14 16:01:23 -06:00
Michal Krol
f23207ca57 tgsi: Use debug_printf(). 2008-03-14 21:44:06 +01:00
Michal Krol
2b8f31a6da scons: Remove second occurence of draw_passthrough.c. 2008-03-14 21:40:32 +01:00
Brian Paul
a9aef5fccd mesa: init tmpNode to zeros 2008-03-14 14:14:13 -06:00
Brian Paul
7dc449d406 mesa: fix emit_clamp() so that we don't use an output register as temporary
IR_CLAMP is decomposed into OPCODE_MIN+OPCODE_MAX.  Allocate a temporary
register for the intermediate value so we don't inadvertantly use an output
register (which are write-only on some GPUs).
2008-03-14 13:50:01 -06:00
Brian Paul
14150bc856 mesa: call glColorMask(1,1,1,1) before glClear()
Without this, second and subsequent redraws rendered incorrectly.
Plus comments.
2008-03-14 11:35:57 -06:00
Brian Paul
9de9e1fe8c gallium: print warning rather than assert(0) for LOG/EXP opcodes
Glean vertProg1 runs all the way through, rather than aborting.
2008-03-14 11:24:28 -06:00
Brian
3088eb5949 gallium: added some debug code (disabled) 2008-03-14 10:23:56 -06:00
Brian
027433176c i915: check for NULL const buffer ptr 2008-03-14 10:23:56 -06:00
Brian
a254d0c368 gallium: added dummy install target 2008-03-14 10:23:56 -06:00
Brian
c45a525cdc mesa: revert fast-track glColor and similar calls when not immediate mode rendering
Revert commit d08cd68d3f

This change caused some glean tests to fail.  The alpha value of colors was
always 1.0 instead of the value from glColor4fv().  The mesa color array
found in st_draw() has size=3 instead of size=4.
2008-03-14 10:23:56 -06:00
Brian
ee55eaa609 gallium: in st_program_string_notify() free shader tokens.
When the shader instructions change, free the TGSI tokens.  This signals the
state tracker to recompile the shader.  Fixes a regression caused by recent
shader/state-tracker changes.
2008-03-14 10:23:56 -06:00
Keith Whitwell
e4cdce43ce gallium: fix some compiler warnings 2008-03-14 08:42:45 +00:00
Keith Whitwell
d34bc880a4 tgsi: add debug_printf version of tgsi_dump 2008-03-14 08:42:08 +00:00
Brian
78302c7ca3 gallium: need to all draw_flush() in softpipe_unmap_constant_buffers()
Otherwise, we won't have our constants when we run the fragment shader.
Fixes crash in glsl tests when SP_VBUF=1.
2008-03-13 18:19:47 -06:00
Brian
34be396950 gallium: fix EMIT_HEADER case in draw_vf_set_vertex_info() 2008-03-13 17:39:30 -06:00
Brian
d088d640fc gallium: plug in vertex passthrough code
Based on a patch from Zack.
Basically, implement a new draw_arrays function that copies the incoming
user-vertices to the hardware vertex buffer, doing format/type conversion
as needed.
The vertex fetch/store code is totally temporary for now.
2008-03-13 17:10:28 -06:00
Brian
5bae5871f0 gallium: for TEST_DRAW_PASSTHROUGH, pass inClipCoords=FALSE to st_draw_vertices()
When pass-through mode is fully supported we'll clean this up more.
2008-03-13 17:06:13 -06:00
Brian
ce49c4c24b gallium: fix bug in draw_num_vs_outputs() 2008-03-13 17:04:56 -06:00
Brian
cf106789ab gallium: added EMIT_HEADER case 2008-03-13 17:04:04 -06:00
Brian
269fbeb545 gallium: in softpipe_get_vertex_info() generate a vbuf vertex_info with real attribs
Can't use the EMIT_ALL shortcut/optimization anymore because of passthrough mode.
2008-03-13 16:57:57 -06:00
Brian
13334c8dd2 gallium: added EMIT_HEADER case in emit_vertex() 2008-03-13 16:57:37 -06:00
Brian
b9518a4e39 gallium: added new EMIT_HEADER token
Used to emit the struct vertex_header info for softpipe.
Before we were using the EMIT_ALL token but that's insufficient for the
draw pass-through mode.  EMIT_ALL might get removed soon...
2008-03-13 16:55:48 -06:00
Brian
7d5e38a55a gallium: plug in new sp_vbuf_draw_arrays() function
Will be used for pass-through mode.
Also, call draw_set_render() to register the vbuf stage.  Should probably
rename that function to something like draw_set_vbuf_stage().
2008-03-13 16:53:44 -06:00
Brian
3e625ce18e gallium: add some temporary code for testing draw module vertex passthrough
Set TEST_DRAW_PASSTHROUGH=1, run progs/trivial/clear-scissor
2008-03-13 15:08:18 -06:00
Brian
69c39b9ae2 gallium: set surface status to CLEAR or DEFINED in clearing/drawing code.
Otherwise, we were never setting these flags.  This confused the state tracker.
Fixes progs/demos/texenv.c, probably others.
2008-03-13 15:08:18 -06:00
Zack Rusin
a889928d85 add a way of removing an exact iterator from the hash 2008-03-13 16:41:37 -04:00
Brian
3faf6230ff gallium: added draw_need_pipeline() predicate function
To test if we need any pipeline stage, or whether we can go into passthrough mode.
2008-03-13 14:34:35 -06:00
Brian
8b8c9acdb7 gallium: added draw_enable_line_stipple() function
Allows drivers that implement line stipple to turn off this drawing stage.
2008-03-13 14:33:57 -06:00
Brian
b6ed165748 gallium: added bypass_vs flag to rasterizer state (may be temporary) 2008-03-13 14:32:20 -06:00