| /* |
| * Copyright 2018 Google Inc. |
| * |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| in float k1; |
| in float k2; |
| in float k3; |
| in float k4; |
| layout(key) in bool enforcePMColor; |
| in fragmentProcessor child; |
| |
| uniform float4 k; |
| |
| void main() { |
| half4 dst = process(child); |
| sk_OutColor = clamp(k.x * sk_InColor * dst + k.y * sk_InColor + k.z * dst + k.w, 0, 1); |
| if (enforcePMColor) { |
| sk_OutColor.rgb = min(sk_OutColor.rgb, sk_OutColor.a); |
| } |
| } |
| |
| @setData(pdman) { |
| pdman.set4f(k, k1, k2, k3, k4); |
| } |