Browse Source

glasm: Implement gl_Layer stores

nce_cpp
ReinUsesLisp 5 years ago
committed by ameerj
parent
commit
26ba81b9bf
  1. 7
      src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp

7
src/shader_recompiler/backend/glasm/emit_glasm_context_get_set.cpp

@ -134,6 +134,13 @@ void EmitSetAttribute(EmitContext& ctx, IR::Attribute attr, ScalarF32 value,
ctx.Add("MOV.F result.clip[{}].x,{};", index, value); ctx.Add("MOV.F result.clip[{}].x,{};", index, value);
break; break;
} }
case IR::Attribute::Layer:
if (ctx.stage == Stage::Geometry || ctx.profile.support_viewport_index_layer_non_geometry) {
ctx.Add("MOV.F result.layer.x,{};", value);
} else {
// LOG_WARNING
}
break;
case IR::Attribute::ViewportIndex: case IR::Attribute::ViewportIndex:
if (ctx.stage == Stage::Geometry || ctx.profile.support_viewport_index_layer_non_geometry) { if (ctx.stage == Stage::Geometry || ctx.profile.support_viewport_index_layer_non_geometry) {
ctx.Add("MOV.F result.viewport.x,{};", value); ctx.Add("MOV.F result.viewport.x,{};", value);

Loading…
Cancel
Save