aboutsummaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/spirv/emit_spirv.cpp
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2021-05-23 04:18:22 -0300
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-22 21:51:29 -0400
commitcfd873275d705f124efff6ceae33efc8994e64fa (patch)
treec527727ef66eee90f6f64d6598faebfaa4163a5e /src/shader_recompiler/backend/spirv/emit_spirv.cpp
parentbafe9e35a96407b0cddcc8b66316063f0e7f9c76 (diff)
spirv: Use OriginLowerLeft when requested
Diffstat (limited to 'src/shader_recompiler/backend/spirv/emit_spirv.cpp')
-rw-r--r--src/shader_recompiler/backend/spirv/emit_spirv.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/shader_recompiler/backend/spirv/emit_spirv.cpp b/src/shader_recompiler/backend/spirv/emit_spirv.cpp
index 0cb075670f..10de612cd9 100644
--- a/src/shader_recompiler/backend/spirv/emit_spirv.cpp
+++ b/src/shader_recompiler/backend/spirv/emit_spirv.cpp
@@ -212,7 +212,11 @@ void DefineEntryPoint(const IR::Program& program, EmitContext& ctx, Id main) {
break;
case Stage::Fragment:
execution_model = spv::ExecutionModel::Fragment;
- ctx.AddExecutionMode(main, spv::ExecutionMode::OriginUpperLeft);
+ if (ctx.profile.lower_left_origin_mode) {
+ ctx.AddExecutionMode(main, spv::ExecutionMode::OriginLowerLeft);
+ } else {
+ ctx.AddExecutionMode(main, spv::ExecutionMode::OriginUpperLeft);
+ }
if (program.info.stores_frag_depth) {
ctx.AddExecutionMode(main, spv::ExecutionMode::DepthReplacing);
}