diff options
author | Dave Airlie <[email protected]> | 2012-01-04 11:52:30 +0000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2012-01-11 07:13:35 +0000 |
commit | 40c5987ed84f9f0b8bb1f707bb13c1aafc39330a (patch) | |
tree | 0614696dcf1b6b8f1886920b3520e38f66dcc3f3 /src/gallium/auxiliary/draw/draw_pt_fetch.c | |
parent | 34a78b7ef6b0edf217acf221eab4b63542be5552 (diff) |
draw/softpipe: add clip vertex support. (v2)
softpipe always clipped using the position vector, however for unclipped
vertices it stored the position in window coordinates, however when position
and clipping are separated, we need to store the clip-space position and
the clip-space vertex clip, so we can interpolate both separately.
This means we have to take the clip space position and store it to use later.
This allows softpipe to pass all the clip-vertex piglit tests.
v2: fix llvm draw regression, the structure being passed into llvm needed
updating, remove some hardcoded ints that should have been enums while there.
Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/auxiliary/draw/draw_pt_fetch.c')
-rw-r--r-- | src/gallium/auxiliary/draw/draw_pt_fetch.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gallium/auxiliary/draw/draw_pt_fetch.c b/src/gallium/auxiliary/draw/draw_pt_fetch.c index b0032e5ad0e..a6cc1834e6c 100644 --- a/src/gallium/auxiliary/draw/draw_pt_fetch.c +++ b/src/gallium/auxiliary/draw/draw_pt_fetch.c @@ -74,9 +74,9 @@ draw_pt_fetch_prepare(struct pt_fetch *fetch, /* Leave the clipmask/edgeflags/pad/vertex_id untouched */ dst_offset += 1 * sizeof(float); - /* Just leave the clip[] array untouched. + /* Just leave the clip[] and pre_clip_pos[] array untouched. */ - dst_offset += 4 * sizeof(float); + dst_offset += 8 * sizeof(float); if (instance_id_index != ~0) { num_extra_inputs++; |