[Mesa-dev] [PATCH 4/5] gallium: introduce PIPE_CAP_CLIP_HALFZ.

Michel Dänzer michel at daenzer.net
Wed Oct 22 19:47:32 PDT 2014


On 23.10.2014 02:13, Mathias.Froehlich at gmx.net wrote:
> From: Mathias Fröhlich <Mathias.Froehlich at gmx.net>
>
> In preparation of ARB_clip_control. Let the driver decide if
> it supports pipe_rasterizer_state::clip_halfz being set to true.
>
> Signed-off-by: Mathias Froehlich <Mathias.Froehlich at web.de

[...]

> diff --git a/src/gallium/drivers/ilo/ilo_screen.c b/src/gallium/drivers/ilo/ilo_screen.c
> index 48c3dea..4e931fb 100644
> --- a/src/gallium/drivers/ilo/ilo_screen.c
> +++ b/src/gallium/drivers/ilo/ilo_screen.c
> @@ -446,6 +446,7 @@ ilo_get_param(struct pipe_screen *screen, enum pipe_cap param)
>      case PIPE_CAP_TGSI_FS_FINE_DERIVATIVE:
>      case PIPE_CAP_CONDITIONAL_RENDER_INVERTED:
>      case PIPE_CAP_SAMPLER_VIEW_TARGET:
> +   case PIPE_CAP_CLIP_HALFZ:
>         return 0;

ilo handles clip_halfz according to git grep:

src/gallium/drivers/ilo/ilo_state_gen6.c:   if (state->clip_halfz)


> diff --git a/src/gallium/drivers/softpipe/sp_screen.c b/src/gallium/drivers/softpipe/sp_screen.c
> index a6e7fc0..47126ef 100644
> --- a/src/gallium/drivers/softpipe/sp_screen.c
> +++ b/src/gallium/drivers/softpipe/sp_screen.c
> @@ -227,6 +227,8 @@ softpipe_get_param(struct pipe_screen *screen, enum pipe_cap param)
>         return 0;
>      case PIPE_CAP_CONDITIONAL_RENDER_INVERTED:
>         return 1;
> +   case PIPE_CAP_CLIP_HALFZ:
> +      return 1;

Does softpipe really handle it though? Have you tested that?


-- 
Earthling Michel Dänzer            |                  http://www.amd.com
Libre software enthusiast          |                Mesa and X developer


More information about the mesa-dev mailing list