Quellcode durchsuchen

spirv: Use OriginLowerLeft when requested

ReinUsesLisp vor 5 Jahren
Ursprung
Commit
cfd873275d
1 geänderte Dateien mit 5 neuen und 1 gelöschten Zeilen
  1. 5 1
      src/shader_recompiler/backend/spirv/emit_spirv.cpp

+ 5 - 1
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);
         }