summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp
diff options
context:
space:
mode:
authorGravatar FengChen2022-11-11 00:25:03 +0800
committerGravatar FengChen2022-11-17 22:45:14 +0800
commit60e0d4a177803891720af4c5978bbf2604bed276 (patch)
treea020a61ec430e3f2c3aff69b267b979a43f9eb9b /src/shader_recompiler/backend/spirv/spirv_emit_context.cpp
parentMerge pull request #9199 from liamwhite/service-oops (diff)
downloadyuzu-60e0d4a177803891720af4c5978bbf2604bed276.tar.gz
yuzu-60e0d4a177803891720af4c5978bbf2604bed276.tar.xz
yuzu-60e0d4a177803891720af4c5978bbf2604bed276.zip
shader: Implement miss attribute layer
Diffstat (limited to 'src/shader_recompiler/backend/spirv/spirv_emit_context.cpp')
-rw-r--r--src/shader_recompiler/backend/spirv/spirv_emit_context.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp b/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp
index c26ad8f93..e80662d23 100644
--- a/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp
+++ b/src/shader_recompiler/backend/spirv/spirv_emit_context.cpp
@@ -1355,6 +1355,10 @@ void EmitContext::DefineInputs(const IR::Program& program) {
1355 if (loads[IR::Attribute::PrimitiveId]) { 1355 if (loads[IR::Attribute::PrimitiveId]) {
1356 primitive_id = DefineInput(*this, U32[1], false, spv::BuiltIn::PrimitiveId); 1356 primitive_id = DefineInput(*this, U32[1], false, spv::BuiltIn::PrimitiveId);
1357 } 1357 }
1358 if (loads[IR::Attribute::Layer]) {
1359 AddCapability(spv::Capability::Geometry);
1360 layer = DefineInput(*this, U32[1], false, spv::BuiltIn::Layer);
1361 }
1358 if (loads.AnyComponent(IR::Attribute::PositionX)) { 1362 if (loads.AnyComponent(IR::Attribute::PositionX)) {
1359 const bool is_fragment{stage != Stage::Fragment}; 1363 const bool is_fragment{stage != Stage::Fragment};
1360 const spv::BuiltIn built_in{is_fragment ? spv::BuiltIn::Position : spv::BuiltIn::FragCoord}; 1364 const spv::BuiltIn built_in{is_fragment ? spv::BuiltIn::Position : spv::BuiltIn::FragCoord};