summaryrefslogtreecommitdiff
path: root/src/glsl/builtins/130/mix
blob: 9a1fcd70ffa9c69775c0c306fa6669dcc28d123d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
((function mix
   (signature float
     (parameters
       (declare (in) float v1)
       (declare (in) float v2)
       (declare (in) bool  a))
     ((assign (var_ref a) (var_ref v1) (var_ref v2))
      (return (var_ref v1))))

   (signature vec2
     (parameters
       (declare (in) vec2 v1)
       (declare (in) vec2 v2)
       (declare (in) bvec2 a))
     ((assign (swiz x (var_ref a)) (swiz x (var_ref v1)) (swiz x (var_ref v2)))
      (assign (swiz y (var_ref a)) (swiz y (var_ref v1)) (swiz y (var_ref v2)))
      (return (var_ref v1))))

   (signature vec3
     (parameters
       (declare (in) vec3 v1)
       (declare (in) vec3 v2)
       (declare (in) bvec3 a))
     ((assign (swiz x (var_ref a)) (swiz x (var_ref v1)) (swiz x (var_ref v2)))
      (assign (swiz y (var_ref a)) (swiz y (var_ref v1)) (swiz y (var_ref v2)))
      (assign (swiz z (var_ref a)) (swiz z (var_ref v1)) (swiz z (var_ref v2)))
      (return (var_ref v1))))

   (signature vec4
     (parameters
       (declare (in) vec4 v1)
       (declare (in) vec4 v2)
       (declare (in) bvec4 a))
     ((assign (swiz x (var_ref a)) (swiz x (var_ref v1)) (swiz x (var_ref v2)))
      (assign (swiz y (var_ref a)) (swiz y (var_ref v1)) (swiz y (var_ref v2)))
      (assign (swiz z (var_ref a)) (swiz z (var_ref v1)) (swiz z (var_ref v2)))
      (assign (swiz w (var_ref a)) (swiz w (var_ref v1)) (swiz w (var_ref v2)))
      (return (var_ref v1))))
))