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"); } }