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); }