(signature float
(parameters
(declare (in) float x))
- ((return (expression float log (expression float + (var_ref x) (expression float sqrt (expression float + (expression float * (var_ref x) (var_ref x)) (constant float (1)))))))))
+ ((return (expression float *
+ (expression float sign (var_ref x))
+ (expression float log
+ (expression float +
+ (expression float abs (var_ref x))
+ (expression float sqrt
+ (expression float +
+ (expression float * (var_ref x) (var_ref x))
+ (constant float (1))))))))))
(signature vec2
(parameters
(declare (in) vec2 x))
- ((return (expression vec2 log (expression vec2 + (var_ref x) (expression vec2 sqrt (expression vec2 + (expression vec2 * (var_ref x) (var_ref x)) (constant float (1)))))))))
+ ((return (expression vec2 *
+ (expression vec2 sign (var_ref x))
+ (expression vec2 log
+ (expression vec2 +
+ (expression vec2 abs (var_ref x))
+ (expression vec2 sqrt
+ (expression vec2 +
+ (expression vec2 * (var_ref x) (var_ref x))
+ (constant float (1))))))))))
(signature vec3
(parameters
(declare (in) vec3 x))
- ((return (expression vec3 log (expression vec3 + (var_ref x) (expression vec3 sqrt (expression vec3 + (expression vec3 * (var_ref x) (var_ref x)) (constant float (1)))))))))
+ ((return (expression vec3 *
+ (expression vec3 sign (var_ref x))
+ (expression vec3 log
+ (expression vec3 +
+ (expression vec3 abs (var_ref x))
+ (expression vec3 sqrt
+ (expression vec3 +
+ (expression vec3 * (var_ref x) (var_ref x))
+ (constant float (1))))))))))
(signature vec4
(parameters
(declare (in) vec4 x))
- ((return (expression vec4 log (expression vec4 + (var_ref x) (expression vec4 sqrt (expression vec4 + (expression vec4 * (var_ref x) (var_ref x)) (constant float (1)))))))))
+ ((return (expression vec4 *
+ (expression vec4 sign (var_ref x))
+ (expression vec4 log
+ (expression vec4 +
+ (expression vec4 abs (var_ref x))
+ (expression vec4 sqrt
+ (expression vec4 +
+ (expression vec4 * (var_ref x) (var_ref x))
+ (constant float (1))))))))))
))