aeae3a58e3
This CL also updates the blend tests to use sk_FragColor instead of returning a half4, as the Metal backend assumes that a fragment processor's `main` will return void and always synthesizes a `return *_out;` at the end. (context link: https://osscs.corp.google.com/android/platform/superproject/+/master:external/skqp/src/sksl/SkSLMetalCodeGenerator.cpp;l=803;drc=842d31b14159626054e01dd32826563a8f4214bf ) BYPASS_INCLUSIVE_LANGUAGE_REASON=see http://b/168134166 Change-Id: I330a456bf25ee72d3a29c59cd624625378ae80a0 Bug: skia:10649, skia:10757, skia:10758, skia:10759, skia:10760, skia:10761, skia:10762 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/319409 Commit-Queue: John Stiles <johnstiles@google.com> Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
15 lines
516 B
Plaintext
15 lines
516 B
Plaintext
layout(set=0) uniform float4x4 colorXform;
|
|
layout(binding=0) uniform sampler2D sampler;
|
|
|
|
void main() {
|
|
float4 tmpColor;
|
|
sk_FragColor =
|
|
half4(1.0) *
|
|
(tmpColor = sample(sampler, float2(1)),
|
|
half4(colorXform != float4x4(1.0)
|
|
? float4(clamp((float4x4(colorXform) * float4(tmpColor.xyz, 1.0)).xyz,
|
|
0.0, tmpColor.w),
|
|
tmpColor.w)
|
|
: tmpColor));
|
|
}
|