From 559cda3215d94abf15a13c163f8ad034063d1d0b Mon Sep 17 00:00:00 2001 From: Ben Vanik Date: Sun, 22 Mar 2015 01:07:14 -0700 Subject: [PATCH] Forcing depth clear - not right, but gets atrain working. --- src/xenia/gpu/gl4/command_processor.cc | 6 +++++- src/xenia/gpu/gl4/gl4_shader_translator.cc | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/xenia/gpu/gl4/command_processor.cc b/src/xenia/gpu/gl4/command_processor.cc index 8cb0e58a0..825fcb87e 100644 --- a/src/xenia/gpu/gl4/command_processor.cc +++ b/src/xenia/gpu/gl4/command_processor.cc @@ -2795,7 +2795,11 @@ bool CommandProcessor::IssueCopy() { old_color_mask[2], old_color_mask[3]); } - if (depth_clear_enabled) { + // TODO(benvanik): figure out real condition here (maybe when color cleared?) + // HACK: things seem to need their depth buffer cleared a lot more + // than as indicated by the depth_clear_enabled flag. + // if (depth_clear_enabled) { + if (depth_target != kAnyTarget) { // Clear the current depth buffer. // TODO(benvanik): verify format. GLfloat depth = {(copy_depth_clear & 0xFFFFFF00) / float(0xFFFFFF00)}; diff --git a/src/xenia/gpu/gl4/gl4_shader_translator.cc b/src/xenia/gpu/gl4/gl4_shader_translator.cc index e6e6e4891..bc527eb2d 100644 --- a/src/xenia/gpu/gl4/gl4_shader_translator.cc +++ b/src/xenia/gpu/gl4/gl4_shader_translator.cc @@ -1366,7 +1366,7 @@ bool GL4ShaderTranslator::TranslateALU(const instr_alu_t* alu, int sync) { return false; } } else { - // assert_always(); + assert_always(); Append(" // \n"); } }