条件式を if 文を使わないで書く処理をメモしておきます
※define 形式です
x >= y
#define GREATER_EQUAL(x, y) step(y, x)
x <= y
#define LESS_EQUAL(x, y) step(x, y)
x > y
#define GREATER(x, y) 1.0 - step(y, x)
x < y
#define LESS(x, y) 1.0 - step(y, x)
x == y
#define EQUAL(x, y) 1 - abs(sign(x - y))
x != y
#define NOT_EQUAL(x, y) abs(sign(x - y))
0 < a && a < 1
#define RANGE01_GL(a) abs(sign(a - ceil(saturate(a))))
0 <= a && a <= 1
#define RANGE01(a) 1.0 - abs(sign(a - saturate(a)))