Ian Romanick
1936e4bdfd
cell: Initial code-gen for alpha / stencil / depth testing
...
Alpha test is currently broken because all per-fragment testing occurs
before alpha is calculated.
Stencil test is currently broken because the Z-clear code asserts if
there is a stencil buffer.
2008-03-17 15:47:45 -07:00
Ian Romanick
0c715de39f
cell: Fix simple register allocator
...
THere are 64-bits in a uint64_t, not 128. Duh.
2008-03-17 15:47:45 -07:00
Brian
11d723cda6
gallium: added new u_draw_quad.c and u_gen_mipmap.c files.
2008-03-17 15:39:19 -06:00
Brian
f1b42595d0
gallium: new mipmap generation code
...
Based on code from Mesa's state tracker.
Still need to implement fallbacks for those texture formats which can't
generally be rendered to.
2008-03-17 15:38:14 -06:00
Brian
e3a747f1fe
gallium: new util_draw_texquad() function.
2008-03-17 15:37:42 -06: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
Keith Whitwell
9425a702be
gallium: improvements, or extensions at least, to the passthrough path
...
Passthrough is actually more tricky than you'd think...
2008-03-17 10:10:45 +00: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
Brian
49a687882a
gallium: finish remaining prim types for sp_vbuf_draw_arrays()
...
Not totally tested, but easily fixed if glitches are found.
2008-03-16 10:33:59 -06: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
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
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
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
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
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
Ian Romanick
3115e8c968
cell: Fix to work with commit fa9e7e9a8d
2008-03-13 13:10:16 -07:00
Brian Paul
b12a28db96
gallium: remove dead code related to shader semantic input/output info
2008-03-13 14:05:30 -06:00
Brian Paul
7ffbaebce1
gallium: fix bug in stip_first_tri()
...
Need to compute num_samplers after binding/creating the fragment shader.
2008-03-13 13:22:51 -06:00