예제 #1
0
 public static int3x4 transpose(int4x3 v)
 {
     return(int3x4(
                v.c0.x, v.c0.y, v.c0.z, v.c0.w,
                v.c1.x, v.c1.y, v.c1.z, v.c1.w,
                v.c2.x, v.c2.y, v.c2.z, v.c2.w));
 }
예제 #2
0
 public float4x3(int4x3 v)
 {
     this.c0 = v.c0;
     this.c1 = v.c1;
     this.c2 = v.c2;
 }
예제 #3
0
 public static float4x3 float4x3(int4x3 v)
 {
     return(new float4x3(v));
 }
예제 #4
0
 public static uint4 hash_wide(int4x3 v)
 {
     return((asuint(v.c0) * uint4(0xF9137117u, 0xE857DCE1u, 0xF62213C5u, 0x9CDAA959u) +
             asuint(v.c1) * uint4(0xAA269ABFu, 0xD54BA36Fu, 0xFD0847B9u, 0x8189A683u) +
             asuint(v.c2) * uint4(0xB139D651u, 0xE7579997u, 0xEF7D56C7u, 0x66F38F0Bu)) + 0x624256A3u);
 }
예제 #5
0
 public static uint hash(int4x3 v)
 {
     return(csum(asuint(v.c0) * uint4(0xEF63C699u, 0x9001903Fu, 0xA895B9CDu, 0x9D23B201u) +
                 asuint(v.c1) * uint4(0x4B01D3E1u, 0x7461CA0Du, 0x79725379u, 0xD6258E5Bu) +
                 asuint(v.c2) * uint4(0xEE390C97u, 0x9C8A2F05u, 0x4DDC6509u, 0x7CF083CBu)) + 0x5C4D6CEDu);
 }
예제 #6
0
 public static double4x3 double4x3(int4x3 v)
 {
     return(new double4x3(v));
 }
예제 #7
0
 public double4x3(int4x3 v)
 {
     this.c0 = v.c0;
     this.c1 = v.c1;
     this.c2 = v.c2;
 }
예제 #8
0
 public static uint4x3 uint4x3(int4x3 v)
 {
     return(new uint4x3(v));
 }
예제 #9
0
 public uint4x3(int4x3 v)
 {
     this.c0 = (uint4)v.c0;
     this.c1 = (uint4)v.c1;
     this.c2 = (uint4)v.c2;
 }
예제 #10
0
 public static uint hash(int4x3 v)
 {
     return(csum(asuint(v.c0) * uint4(0x69B60C81u, 0xE0EB6C25u, 0xF648BEABu, 0x6BDB2B07u) +
                 asuint(v.c1) * uint4(0xEF63C699u, 0x9001903Fu, 0xA895B9CDu, 0x9D23B201u) +
                 asuint(v.c2) * uint4(0x4B01D3E1u, 0x7461CA0Du, 0x79725379u, 0xD6258E5Bu)) + 0xEE390C97u);
 }
예제 #11
0
 public static uint4 hashwide(int4x3 v)
 {
     return((asuint(v.c0) * uint4(0x9C8A2F05u, 0x4DDC6509u, 0x7CF083CBu, 0x5C4D6CEDu) +
             asuint(v.c1) * uint4(0xF9137117u, 0xE857DCE1u, 0xF62213C5u, 0x9CDAA959u) +
             asuint(v.c2) * uint4(0xAA269ABFu, 0xD54BA36Fu, 0xFD0847B9u, 0x8189A683u)) + 0xB139D651u);
 }
예제 #12
0
 public static uint hash(int4x3 v)
 {
     return(csum(asuint(v.c0) * uint4(0x7F3DD499u, 0x52EAAEBBu, 0x4599C793u, 0x83B5E729u) +
                 asuint(v.c1) * uint4(0xC267163Fu, 0x67BC9149u, 0xAD7C5EC1u, 0x822A7D6Du) +
                 asuint(v.c2) * uint4(0xB492BF15u, 0xD37220E3u, 0x7AA2C2BDu, 0xE16BC89Du)) + 0x7AA07CD3u);
 }
예제 #13
0
 public static uint4 hashwide(int4x3 v)
 {
     return((asuint(v.c0) * uint4(0x94DDD769u, 0xA1E92D39u, 0x4583C801u, 0x9536A0F5u) +
             asuint(v.c1) * uint4(0xAF816615u, 0x9AF8D62Du, 0xE3600729u, 0x5F17300Du) +
             asuint(v.c2) * uint4(0x670D6809u, 0x7AF32C49u, 0xAE131389u, 0x5D1B165Bu)) + 0x87096CD7u);
 }
예제 #14
0
 public static uint hash(int4x3 v)
 {
     return(csum(asuint(v.c0) * uint4(0xA9D919BFu, 0xC3EC1D97u, 0xB8B208C7u, 0x5D3ED947u) +
                 asuint(v.c1) * uint4(0x4473BBB1u, 0xCBA11D5Fu, 0x685835CFu, 0xC3D32AE1u) +
                 asuint(v.c2) * uint4(0xB966942Fu, 0xFE9856B3u, 0xFA3A3285u, 0xAD55999Du)) + 0xDCDD5341u);
 }
예제 #15
0
 public fix64p4x3(int4x3 v)
 {
     this.c0 = (fix64p4)v.c0;
     this.c1 = (fix64p4)v.c1;
     this.c2 = (fix64p4)v.c2;
 }
예제 #16
0
 public static fix64p4x3 fix64p4x3(int4x3 v)
 {
     return(new fix64p4x3(v));
 }