| #version 400 |
| uniform vec2 u_skRTFlip; |
| in vec4 sk_FragCoord_Workaround; |
| out vec4 sk_FragColor; |
| vec4 func1_f4() { |
| bool sk_Clockwise = gl_FrontFacing; |
| if (u_skRTFlip.y < 0.0) { |
| sk_Clockwise = !sk_Clockwise; |
| } |
| float sk_FragCoord_InvW = 1. / sk_FragCoord_Workaround.w; |
| vec4 sk_FragCoord_Resolved = vec4(sk_FragCoord_Workaround.xyz * sk_FragCoord_InvW, sk_FragCoord_InvW); |
| sk_FragCoord_Resolved.xy = floor(sk_FragCoord_Resolved.xy) + vec2(.5); |
| return sk_Clockwise ? sk_FragCoord_Resolved : vec4(0.0); |
| } |
| vec4 func2_f4() { |
| bool sk_Clockwise = gl_FrontFacing; |
| if (u_skRTFlip.y < 0.0) { |
| sk_Clockwise = !sk_Clockwise; |
| } |
| float sk_FragCoord_InvW = 1. / sk_FragCoord_Workaround.w; |
| vec4 sk_FragCoord_Resolved = vec4(sk_FragCoord_Workaround.xyz * sk_FragCoord_InvW, sk_FragCoord_InvW); |
| sk_FragCoord_Resolved.xy = floor(sk_FragCoord_Resolved.xy) + vec2(.5); |
| return sk_Clockwise ? vec4(0.0) : sk_FragCoord_Resolved; |
| } |
| void main() { |
| sk_FragColor = func1_f4() + func2_f4(); |
| } |