public static uint3x3 transpose(uint3x3 v) { return(uint3x3( v.c0.x, v.c0.y, v.c0.z, v.c1.x, v.c1.y, v.c1.z, v.c2.x, v.c2.y, v.c2.z)); }
public static uint3 hashwide(uint3x3 v) { return((v.c0 * uint3(0xA2D00EDFu, 0xA8977779u, 0x9F1C739Bu) + v.c1 * uint3(0x4B1BD187u, 0x9DF50593u, 0xF18EEB85u) + v.c2 * uint3(0x9E19BFC3u, 0x8196B06Fu, 0xD24EFA19u)) + 0x7D8048BBu); }
public static uint hash(uint3x3 v) { return(csum(v.c0 * uint3(0xAC60D0C3u, 0x9263662Fu, 0xE69626FFu) + v.c1 * uint3(0xBD010EEBu, 0x9CEDE1D1u, 0x43BE0B51u) + v.c2 * uint3(0xAF836EE1u, 0xB130C137u, 0x54834775u)) + 0x7C022221u); }
public int3x3(uint3x3 v) { this.c0 = (int3)v.c0; this.c1 = (int3)v.c1; this.c2 = (int3)v.c2; }
public static int3x3 int3x3(uint3x3 v) { return(new int3x3(v)); }
public static float3x3 float3x3(uint3x3 v) { return(new float3x3(v)); }
public float3x3(uint3x3 v) { this.c0 = new float3(v.c0); this.c1 = new float3(v.c1); this.c2 = new float3(v.c2); }