From d7ed044be11213996756068122665fab13feb493 Mon Sep 17 00:00:00 2001 From: Triang3l Date: Wed, 9 Jan 2019 16:25:03 +0300 Subject: [PATCH] [D3D12] Don't cull points and rectangles --- src/xenia/gpu/d3d12/pipeline_cache.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/xenia/gpu/d3d12/pipeline_cache.cc b/src/xenia/gpu/d3d12/pipeline_cache.cc index 47dd8ace1..51564a16f 100644 --- a/src/xenia/gpu/d3d12/pipeline_cache.cc +++ b/src/xenia/gpu/d3d12/pipeline_cache.cc @@ -453,7 +453,13 @@ bool PipelineCache::GetCurrentStateDescription( } // Rasterizer state. - uint32_t cull_mode = pa_su_sc_mode_cntl & 0x3; + uint32_t cull_mode; + if (primitive_type == PrimitiveType::kPointList || + primitive_type == PrimitiveType::kRectangleList) { + cull_mode = 0; + } else { + cull_mode = pa_su_sc_mode_cntl & 0x3; + } if (cull_mode & 1) { // More special, so checked first - generally back faces are culled. description_out.cull_mode = PipelineCullMode::kFront;