public static uint hash(int2x4 v) { return(csum(asuint(v.c0) * uint2(0x7AA07CD3u, 0xAF642BA9u) + asuint(v.c1) * uint2(0xA8F2213Bu, 0x9F3FDC37u) + asuint(v.c2) * uint2(0xAC60D0C3u, 0x9263662Fu) + asuint(v.c3) * uint2(0xE69626FFu, 0xBD010EEBu)) + 0x9CEDE1D1u); }
public static uint2 hashwide(int2x4 v) { return((asuint(v.c0) * uint2(0x43BE0B51u, 0xAF836EE1u) + asuint(v.c1) * uint2(0xB130C137u, 0x54834775u) + asuint(v.c2) * uint2(0x7C022221u, 0xA2D00EDFu) + asuint(v.c3) * uint2(0xA8977779u, 0x9F1C739Bu)) + 0x4B1BD187u); }
public uint2x4(int2x4 v) { this.c0 = (uint2)v.c0; this.c1 = (uint2)v.c1; this.c2 = (uint2)v.c2; this.c3 = (uint2)v.c3; }
public double2x4(int2x4 v) { this.c0 = v.c0; this.c1 = v.c1; this.c2 = v.c2; this.c3 = v.c3; }
public float2x4(int2x4 v) { this.c0 = v.c0; this.c1 = v.c1; this.c2 = v.c2; this.c3 = v.c3; }
public static int4x2 transpose(int2x4 v) { return(int4x2( v.c0.x, v.c0.y, v.c1.x, v.c1.y, v.c2.x, v.c2.y, v.c3.x, v.c3.y)); }
public static uint2x4 uint2x4(int2x4 v) { return(new uint2x4(v)); }
public static double2x4 double2x4(int2x4 v) { return(new double2x4(v)); }
public static float2x4 float2x4(int2x4 v) { return(new float2x4(v)); }