From: Axel Davy Date: Sun, 11 Sep 2016 13:57:12 +0000 (+0200) Subject: st/nine: Implement D3DUSAGE_SOFTWAREPROCESSING X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ded7a73eb36e4a1cce625b2c612ec4acb85eed9e;p=mesa.git st/nine: Implement D3DUSAGE_SOFTWAREPROCESSING Buffers with this flag must be usable with both software and hardware vertex processing. Use Staging for fast cpu access. Signed-off-by: Axel Davy Reviewed-by: Patrick Rudolph --- diff --git a/src/gallium/state_trackers/nine/buffer9.c b/src/gallium/state_trackers/nine/buffer9.c index 236a3ee66bd..e7c6a2fdcab 100644 --- a/src/gallium/state_trackers/nine/buffer9.c +++ b/src/gallium/state_trackers/nine/buffer9.c @@ -106,9 +106,10 @@ NineBuffer9_ctor( struct NineBuffer9 *This, /* if (pDesc->Usage & D3DUSAGE_NPATCHES) { } */ /* if (pDesc->Usage & D3DUSAGE_POINTS) { } */ /* if (pDesc->Usage & D3DUSAGE_RTPATCHES) { } */ + /* The buffer must be usable with both sw and hw + * vertex processing. It is expected to be slower with hw. */ if (Usage & D3DUSAGE_SOFTWAREPROCESSING) - DBG("Application asked for Software Vertex Processing, " - "but this is unimplemented\n"); + info->usage = PIPE_USAGE_STAGING; /* if (pDesc->Usage & D3DUSAGE_TEXTAPI) { } */ info->height0 = 1;