|
|
|
@ -379,6 +379,18 @@ void EmitInvocationId(EmitContext& ctx, IR::Inst& inst) { |
|
|
|
ctx.Add("MOV.S {}.x,primitive_invocation.x;", inst); |
|
|
|
} |
|
|
|
|
|
|
|
void EmitInvocationInfo(EmitContext& ctx, IR::Inst& inst) { |
|
|
|
switch (ctx.stage) { |
|
|
|
case Stage::TessellationControl: |
|
|
|
case Stage::TessellationEval: |
|
|
|
ctx.Add("SHL.U {}.x,primitive.vertexcount,16;", inst); |
|
|
|
break; |
|
|
|
default: |
|
|
|
LOG_WARNING(Shader, "(STUBBED) called"); |
|
|
|
ctx.Add("MOV.S {}.x,0x00ff0000;", inst); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void EmitSampleId(EmitContext& ctx, IR::Inst& inst) { |
|
|
|
ctx.Add("MOV.S {}.x,fragment.sampleid.x;", inst); |
|
|
|
} |
|
|
|
|