From 60f48bdd3227218c09160b3dd25cd5bb138ad99a Mon Sep 17 00:00:00 2001 From: Ben Vanik Date: Sat, 16 Nov 2013 04:39:26 -0800 Subject: [PATCH] Always write oPos. --- src/xenia/gpu/d3d11/d3d11_shader.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/xenia/gpu/d3d11/d3d11_shader.cc b/src/xenia/gpu/d3d11/d3d11_shader.cc index 0951a836f..b35f403d3 100644 --- a/src/xenia/gpu/d3d11/d3d11_shader.cc +++ b/src/xenia/gpu/d3d11/d3d11_shader.cc @@ -369,6 +369,10 @@ const char* D3D11VertexShader::Translate(xe_gpu_program_cntl_t* program_cntl) { "VS_OUTPUT main(VS_INPUT i) {\n" " VS_OUTPUT o;\n"); + // Always write position, as some shaders seem to only write certain values. + output->append( + " o.oPos = float4(0.0, 0.0, 0.0, 0.0);\n"); + // TODO(benvanik): remove this, if possible (though the compiler may be smart // enough to do it for us). if (alloc_counts_.params) {