diff options
author | Luca Barbieri <[email protected]> | 2010-08-23 00:31:08 +0200 |
---|---|---|
committer | Luca Barbieri <[email protected]> | 2010-08-23 15:09:22 +0200 |
commit | bfaa2577c6474222c79341c0d90685ed579f3414 (patch) | |
tree | 312af7416223bf2587c17e02806c9ae64a7a533c /src/gallium/drivers/nvfx/nvfx_context.c | |
parent | eb430b0e948caf02b9f4095d0e1435880073c2aa (diff) |
nvfx: support clip planes sensibly and fix them on nv30
Before, we were discarding the compiled vertex program on each
vertex program change.
Now we compile the program as if there were 6 clip planes and
dynamically patch in an "end program" bit at the right place.
Also, nv30 should now work.
Diffstat (limited to 'src/gallium/drivers/nvfx/nvfx_context.c')
-rw-r--r-- | src/gallium/drivers/nvfx/nvfx_context.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/nvfx/nvfx_context.c b/src/gallium/drivers/nvfx/nvfx_context.c index 80b36fb7b91..2f775f92cf5 100644 --- a/src/gallium/drivers/nvfx/nvfx_context.c +++ b/src/gallium/drivers/nvfx/nvfx_context.c @@ -75,6 +75,10 @@ nvfx_create(struct pipe_screen *pscreen, void *priv) screen->base.channel->user_private = nvfx; nvfx->is_nv4x = screen->is_nv4x; + /* TODO: it seems that nv30 might have fixed function clipping usable with vertex programs + * However, my code for that doesn't work, so use vp clipping for all cards, which works. + */ + nvfx->use_vp_clipping = TRUE; nvfx_init_query_functions(nvfx); nvfx_init_surface_functions(nvfx); |