public static Texture2DArray Testure2DListToTexture2DArray(List <Texture2D> list, string path)
        {
            int[]          size  = new int[] { list[0].width, list[0].height };
            Texture2DArray array = new Texture2DArray(size[0], size[1], list.Count, list[0].format, true);
            int            i     = 0;

            foreach (Texture2D texture in list)
            {
                Texture2D resized_texture = texture;
                if (texture.width != size[0] || texture.height != size[1])
                {
                    resized_texture = Helper.Resize(texture, size[0], size[1]);
                }
                array.SetPixels(resized_texture.GetPixels(), i++);
            }
            array.Apply();
            path = path.Remove(path.LastIndexOf('/')) + "/" + AssetDatabase.LoadAssetAtPath <Texture>(path).name + "_Texture2DArray.asset";
            AssetDatabase.CreateAsset(array, path);
            return(array);
        }