Unity3D创建Texture3D

别等时光非礼了梦想. 提交于 2019-12-20 04:58:32

创建Texture3D,本文以159张128*128图片转化Text3D为例

    public Texture2D[] sourceTextures;
    Texture3D texture3D;
    Texture3D CreateText3D(int width, int height, int deep)
    {
        List<Color32> colorList = new List<Color32>();
        texture3D = new Texture3D(width, height, deep, TextureFormat.RGBA32, true);
        for (int z = 0; z < deep; z++)
        {
            Color[] c = sourceTextures[z].GetPixels();
            for (int i = 0; i < c.Length; i++)
            {
                colorList.Add(c[i]);
            }
        }
        texture3D.SetPixels32(colorList.ToArray());
        texture3D.Apply();
        //保存到本地
        AssetDatabase.CreateAsset(texture3D, "Assets/texture3D_128_159.asset");
        return texture3D;
    }

调用方法,CreateText3D(128, 128, 159)

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!