GS:MTL: Avoid uchar in shaders

Intel compiler's uchar codegen is buggy
This commit is contained in:
TellowKrinkle 2022-04-13 01:23:59 -05:00 committed by tellowkrinkle
parent 73f17be890
commit d3faa05479
1 changed files with 6 additions and 6 deletions

View File

@ -338,7 +338,7 @@ struct PSMain
c.z = sample_c(uv.xw).a;
c.w = sample_c(uv.zw).a;
uchar4 i = uchar4(c * 255.5f); // Denormalize value
uint4 i = uint4(c * 255.5f); // Denormalize value
if (PS_PAL_FMT == 1)
return float4(i & 0xF) / 255.f;
@ -504,9 +504,9 @@ struct PSMain
}
else
{
uchar4 rt = uchar4(fetch_raw_color() * 255.5f);
uchar green = (rt.g >> cb.channel_shuffle.green_shift) & cb.channel_shuffle.green_mask;
uchar blue = (rt.b >> cb.channel_shuffle.blue_shift) & cb.channel_shuffle.blue_mask;
uint4 rt = uint4(fetch_raw_color() * 255.5f);
uint green = (rt.g >> cb.channel_shuffle.green_shift) & cb.channel_shuffle.green_mask;
uint blue = (rt.b >> cb.channel_shuffle.blue_shift) & cb.channel_shuffle.blue_mask;
return float4(green | blue);
}
}
@ -800,8 +800,8 @@ struct PSMain
if (PS_SHUFFLE)
{
uchar4 denorm_c = uchar4(C);
uchar2 denorm_TA = uchar2(cb.ta * 255.5f);
uint4 denorm_c = uint4(C);
uint2 denorm_TA = uint2(cb.ta * 255.5f);
C.rb = PS_READ_BA ? C.bb : C.rr;
if (PS_READ_BA)