changeset 0 | 1918ee327afb |
-1:000000000000 | 0:1918ee327afb |
---|---|
1 uniform vec2 porterduff_ab; |
|
2 uniform vec3 porterduff_xyz; |
|
3 |
|
4 vec4 composite(vec4 src, vec4 dst) |
|
5 { |
|
6 vec4 result; |
|
7 |
|
8 result.xyz = porterduff_ab.x * src.xyz * dst.a |
|
9 + porterduff_ab.y * dst.xyz * src.a |
|
10 + porterduff_xyz.y * src.xyz * (1.0 - dst.a) |
|
11 + porterduff_xyz.z * dst.xyz * (1.0 - src.a); |
|
12 |
|
13 result.a = dot(porterduff_xyz, vec3(src.a * dst.a, src.a * (1.0 - dst.a), dst.a * (1.0 - src.a))); |
|
14 |
|
15 return result; |
|
16 } |