diff options
author | Eric Anholt <eric@anholt.net> | 2010-05-19 14:01:33 -0700 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2010-06-01 15:15:05 -0700 |
commit | 5b9ac87941a11c72a220ba14c25cf0f8bc5acffa (patch) | |
tree | 476f8cf8e317b9bfa8ab344f3d369d5f97146a14 /builtins/110 | |
parent | da46e5f5345ed2fa9c74d135267f3d5729c04ed1 (diff) |
builtins: Add support for reflect().
Fixes glsl-orangebook-ch06.frag parsing.
Diffstat (limited to 'builtins/110')
-rw-r--r-- | builtins/110/reflect | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/builtins/110/reflect b/builtins/110/reflect new file mode 100644 index 0000000000..8238fdc93f --- /dev/null +++ b/builtins/110/reflect @@ -0,0 +1,58 @@ +((function reflect + (signature float + (parameters + (declare (in) float i) + (declare (in) float n)) + ((return (expression float - + (var_ref i) + (expression float * + (constant float (2.0)) + (expression float * + (expression float dot + (var_ref n) + (var_ref i)) + (var_ref n))))))) + + (signature vec2 + (parameters + (declare (in) vec2 i) + (declare (in) vec2 n)) + ((return (expression vec2 - + (var_ref i) + (expression vec2 * + (constant float (2.0)) + (expression vec2 * + (expression float dot + (var_ref n) + (var_ref i)) + (var_ref n))))))) + + (signature vec3 + (parameters + (declare (in) vec3 i) + (declare (in) vec3 n)) + ((return (expression vec3 - + (var_ref i) + (expression vec3 * + (constant float (2.0)) + (expression vec3 * + (expression float dot + (var_ref n) + (var_ref i)) + (var_ref n))))))) + + (signature vec4 + (parameters + (declare (in) vec4 i) + (declare (in) vec4 n)) + ((return (expression vec4 - + (var_ref i) + (expression vec4 * + (constant float (2.0)) + (expression vec4 * + (expression float dot + (var_ref n) + (var_ref i)) + (var_ref n))))))) + +)) |