예제 #1
0
 public static float3x2 float3x2(bool3x2 v)
 {
     return(new float3x2(v));
 }
예제 #2
0
 public float3x2(bool3x2 v)
 {
     this.c0 = math.select(new float3(sfloat.Zero), new float3(sfloat.One), v.c0);
     this.c1 = math.select(new float3(sfloat.Zero), new float3(sfloat.One), v.c1);
 }
예제 #3
0
 public static uint hash(bool3x2 v)
 {
     return(csum(select(uint3(0x9C9F0823u, 0x5A9CA13Bu, 0xAFCDD5EFu), uint3(0xA88D187Du, 0xCF6EBA1Du, 0x9D88E5A1u), v.c0) +
                 select(uint3(0xEADF0775u, 0x747A9D7Bu, 0x4111F799u), uint3(0xB5F05AF1u, 0xFD80290Bu, 0x8B65ADB7u), v.c1)));
 }
예제 #4
0
 public static uint3 hashwide(bool3x2 v)
 {
     return(select(uint3(0xDFF4F563u, 0x7069770Du, 0xD1224537u), uint3(0xE99ED6F3u, 0x48125549u, 0xEEE2123Bu), v.c0) +
            select(uint3(0xE3AD9FE5u, 0xCE1CF8BFu, 0x7BE39F3Bu), uint3(0xFAB9913Fu, 0xB4501269u, 0xE04B89FDu), v.c1));
 }
예제 #5
0
 public static bool2x3 transpose(bool3x2 v)
 {
     return(bool2x3(
                v.c0.x, v.c0.y, v.c0.z,
                v.c1.x, v.c1.y, v.c1.z));
 }
예제 #6
0
 public int3x2(bool3x2 v)
 {
     this.c0 = math.select(new int3(0), new int3(1), v.c0);
     this.c1 = math.select(new int3(0), new int3(1), v.c1);
 }
예제 #7
0
 public static int3x2 int3x2(bool3x2 v)
 {
     return(new int3x2(v));
 }
예제 #8
0
 public uint3x2(bool3x2 v)
 {
     this.c0 = math.select(new uint3(0u), new uint3(1u), v.c0);
     this.c1 = math.select(new uint3(0u), new uint3(1u), v.c1);
 }
예제 #9
0
 public static uint3x2 uint3x2(bool3x2 v)
 {
     return(new uint3x2(v));
 }