llvmpipe: handle offset_clamp
authorRoland Scheidegger <sroland@vmware.com>
Thu, 27 Jun 2013 17:01:11 +0000 (19:01 +0200)
committerRoland Scheidegger <sroland@vmware.com>
Thu, 27 Jun 2013 17:06:40 +0000 (19:06 +0200)
commit670f829102f45263f32826ec2dbbbf5c367b5f54
treee0114f9ba19bdc94f3faf99c7117dd125519d5dc
parentb04a295a4a0cd2defe352b3193b5fa79ca8fc9fc
llvmpipe: handle offset_clamp

This was just ignored (unless for some reason like unfilled polys draw was
handling this).
I'm not convinced of that code, putting the float for the clamp in the key
isn't really a good idea. Then again the other floats for depth bias are
already in there too anyway (should probably have a jit_context for the
setup function), so this is just a quick fix.
Also, the "minimum resolvable depth difference" used isn't really right as it
should be calculated according to the z values of the current primitive
and not be a constant (of course, this only makes a difference for float
depth buffers), at least for d3d10, so depth biasing is still not quite right.

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
src/gallium/drivers/llvmpipe/lp_state_setup.c
src/gallium/drivers/llvmpipe/lp_state_setup.h
src/gallium/drivers/llvmpipe/lp_state_surface.c