public static bvec3 notEqual(ivec3 x, ivec3 y) { bvec3 r; r.x = x.x != y.x; r.y = x.y != y.y; r.z = x.z != y.z; return r; }
public static ivec3 abs(ivec3 x) { ivec3 r; r.x = Math.Abs(x.x); r.y = Math.Abs(x.y); r.z = Math.Abs(x.z); return r; }
public static bvec3 greaterThanEqual(ivec3 x, ivec3 y) { bvec3 r; r.x = x.x >= y.x; r.y = x.y >= y.y; r.z = x.z >= y.z; return r; }
public static bvec3 equal(ivec3 x, ivec3 y) { bvec3 r; r.x = x.x == y.x; r.y = x.y == y.y; r.z = x.z == y.z; return r; }
public static bvec3 lessThan(ivec3 x, ivec3 y) { bvec3 r; r.x = x.x < y.x; r.y = x.y < y.y; r.z = x.z < y.z; return r; }
public static bvec3 lessThanEqual(ivec3 x, ivec3 y) { bvec3 r; r.x = x.x <= y.x; r.y = x.y <= y.y; r.z = x.z <= y.z; return r; }
public static ivec3 sign(ivec3 x) { ivec3 r; r.x = Math.Sign(x.x); r.y = Math.Sign(x.y); r.z = Math.Sign(x.z); return r; }
public static ivec3 min(ivec3 x, int y) { ivec3 r; r.x = min(x.x, y); r.y = min(x.y, y); r.z = min(x.z, y); return r; }
public static ivec3 min(ivec3 x, ivec3 y) { ivec3 r; r.x = min(x.x, y.x); r.y = min(x.y, y.y); r.z = min(x.z, y.z); return r; }
public static ivec3 clamp(ivec3 x, ivec3 minVal, ivec3 maxVal) { ivec3 r; r.x = min(max(x.x, minVal.x), maxVal.x); r.y = min(max(x.y, minVal.y), maxVal.y); r.z = min(max(x.z, minVal.z), maxVal.z); return r; }
public static ivec3 clamp(ivec3 x, int minVal, int maxVal) { ivec3 r; r.x = min(max(x.x, minVal), maxVal); r.y = min(max(x.y, minVal), maxVal); r.z = min(max(x.z, minVal), maxVal); return r; }