예제 #1
0
 public int2x4(float2x4 v)
 {
     this.c0 = (int2)v.c0;
     this.c1 = (int2)v.c1;
     this.c2 = (int2)v.c2;
     this.c3 = (int2)v.c3;
 }
예제 #2
0
 public double2x4(float2x4 v)
 {
     this.c0 = v.c0;
     this.c1 = v.c1;
     this.c2 = v.c2;
     this.c3 = v.c3;
 }
예제 #3
0
 public static uint hash(float2x4 v)
 {
     return(csum(asuint(v.c0) * uint2(0xD35C9B2Du, 0xA10D9E27u) +
                 asuint(v.c1) * uint2(0x568DAAA9u, 0x7530254Fu) +
                 asuint(v.c2) * uint2(0x9F090439u, 0x5E9F85C9u) +
                 asuint(v.c3) * uint2(0x8C4CA03Fu, 0xB8D969EDu)) + 0xAC5DB57Bu);
 }
예제 #4
0
 public static uint2 hashwide(float2x4 v)
 {
     return((asuint(v.c0) * uint2(0xA91A02EDu, 0xB3C49313u) +
             asuint(v.c1) * uint2(0xF43A9ABBu, 0x84E7E01Bu) +
             asuint(v.c2) * uint2(0x8E055BE5u, 0x6E624EB7u) +
             asuint(v.c3) * uint2(0x7383ED49u, 0xDD49C23Bu)) + 0xEBD0D005u);
 }
 public static uint2 hashwide(float2x4 v)
 {
     return((asuint(v.c0) * uint2(0xC3EC1D97u, 0xB8B208C7u) +
             asuint(v.c1) * uint2(0x5D3ED947u, 0x4473BBB1u) +
             asuint(v.c2) * uint2(0xCBA11D5Fu, 0x685835CFu) +
             asuint(v.c3) * uint2(0xC3D32AE1u, 0xB966942Fu)) + 0xFE9856B3u);
 }
예제 #6
0
 public fix64p2x4(float2x4 v)
 {
     this.c0 = (fix64p2)v.c0;
     this.c1 = (fix64p2)v.c1;
     this.c2 = (fix64p2)v.c2;
     this.c3 = (fix64p2)v.c3;
 }
 public static uint hash(float2x4 v)
 {
     return(csum(asuint(v.c0) * uint2(0xFAAF07DDu, 0x625C45BDu) +
                 asuint(v.c1) * uint2(0xC9F27FCBu, 0x6D2523B1u) +
                 asuint(v.c2) * uint2(0x6E2BF6A9u, 0xCC74B3B7u) +
                 asuint(v.c3) * uint2(0x83B58237u, 0x833E3E29u)) + 0xA9D919BFu);
 }
예제 #8
0
 public static uint hash(float2x4 v)
 {
     return(csum(asuint(v.c0) * uint2(0xEF63C699u, 0x9001903Fu) +
                 asuint(v.c1) * uint2(0xA895B9CDu, 0x9D23B201u) +
                 asuint(v.c2) * uint2(0x4B01D3E1u, 0x7461CA0Du) +
                 asuint(v.c3) * uint2(0x79725379u, 0xD6258E5Bu)) + 0xEE390C97u);
 }
예제 #9
0
 public static uint2 hashwide(float2x4 v)
 {
     return((asuint(v.c0) * uint2(0xFE9856B3u, 0xFA3A3285u) +
             asuint(v.c1) * uint2(0xAD55999Du, 0xDCDD5341u) +
             asuint(v.c2) * uint2(0x94DDD769u, 0xA1E92D39u) +
             asuint(v.c3) * uint2(0x4583C801u, 0x9536A0F5u)) + 0xAF816615u);
 }
예제 #10
0
 public static uint hash(float2x4 v)
 {
     return(csum(asuint(v.c0) * uint2(0xA9D919BFu, 0xC3EC1D97u) +
                 asuint(v.c1) * uint2(0xB8B208C7u, 0x5D3ED947u) +
                 asuint(v.c2) * uint2(0x4473BBB1u, 0xCBA11D5Fu) +
                 asuint(v.c3) * uint2(0x685835CFu, 0xC3D32AE1u)) + 0xB966942Fu);
 }
예제 #11
0
 public static float4x2 transpose(float2x4 v)
 {
     return(float4x2(
                v.c0.x, v.c0.y,
                v.c1.x, v.c1.y,
                v.c2.x, v.c2.y,
                v.c3.x, v.c3.y));
 }
예제 #12
0
 public static int2x4 int2x4(float2x4 v)
 {
     return(new int2x4(v));
 }
예제 #13
0
 public static double2x4 double2x4(float2x4 v)
 {
     return(new double2x4(v));
 }
예제 #14
0
 public static fix64p2x4 fix64p2x4(float2x4 v)
 {
     return(new fix64p2x4(v));
 }
예제 #15
0
 public static uint2x4 uint2x4(float2x4 v)
 {
     return(new uint2x4(v));
 }