Ejemplo n.º 1
0
 static public void FromVtArray(VtVec3fArray input, ref UnityEngine.Vector3[] output)
 {
     if (output.Length != input.size())
     {
         output = UsdIo.ArrayAllocator.Malloc <UnityEngine.Vector3>(input.size());
     }
     unsafe
     {
         fixed(UnityEngine.Vector3 *p = output)
         {
             input.CopyToArray((IntPtr)p);
         }
     }
 }
Ejemplo n.º 2
0
        // Convenience API: generates garbage, do not use when performance matters.
        static public UnityEngine.Vector3[] FromVtArray(VtVec3fArray input)
        {
            var output = UsdIo.ArrayAllocator.Malloc <UnityEngine.Vector3>(input.size());;

            FromVtArray(input, ref output);
            return(output);
        }
Ejemplo n.º 3
0
        static public UnityEngine.Color[] FromVtArray(VtVec3fArray rgbIn, VtFloatArray alphaIn)
        {
            var ret = UsdIo.ArrayAllocator.Malloc <UnityEngine.Color>(rgbIn.size());

            float[] alpha             = FromVtArray(alphaIn);
            UnityEngine.Vector3[] rgb = FromVtArray(rgbIn);

            for (int i = 0; i < rgbIn.size(); i++)
            {
                ret[i].r = rgb[i][0];
                ret[i].g = rgb[i][1];
                ret[i].b = rgb[i][2];
                ret[i].a = alpha[i];
            }

            return(ret);
        }
Ejemplo n.º 4
0
        static public List <UnityEngine.Vector3> ListFromVtArray(VtVec3fArray input)
        {
            var output = UsdIo.ArrayAllocator.Malloc <UnityEngine.Vector3>(input.size());

            unsafe
            {
                fixed(UnityEngine.Vector3 *p = output)
                {
                    input.CopyToArray((IntPtr)p);
                }
            }
            return(output.ToList());
        }