コード例 #1
0
        //==============Texture Array=================

        public static Texture2DArray PathsToTexture2DArray(string[] paths)
        {
            if (paths[0].EndsWith(".gif"))
            {
                return(Converter.GifToTextureArray(paths[0]));
            }
            else if (paths != null && paths.Length > 0)
            {
                List <Texture2D> textures = new List <Texture2D>();
                foreach (string p in paths)
                {
                    if (AssetDatabase.GetMainAssetTypeAtPath(p).IsSubclassOf(typeof(Texture)))
                    {
                        textures.Add(TextureHelper.GetReadableTexture(AssetDatabase.LoadAssetAtPath <Texture>(p)));
                    }
                }
                if (textures.Count > 0)
                {
                    Texture2DArray arrayTexture = Textre2DArrayToAsset(textures.ToArray());
                    AssetDatabase.CreateAsset(arrayTexture, paths[0].RemoveFileExtension() + ".asset");
                    AssetDatabase.SaveAssets();
                    return(arrayTexture);
                }
            }
            return(null);
        }
コード例 #2
0
ファイル: Styles.cs プロジェクト: rygo6/GTPoiyomiToonShader
        private static Texture2D OverrideTextureWithColor(Texture2D ogtex, Color color)
        {
            Texture2D tex = TextureHelper.GetReadableTexture(ogtex);

            for (int x = 0; x < tex.width; x++)
            {
                for (int y = 0; y < tex.height; y++)
                {
                    color.a = tex.GetPixel(x, y).a;
                    tex.SetPixel(x, y, color);
                }
            }
            tex.Apply();
            return(tex);
        }
コード例 #3
0
        private static Texture2D MultiplyTextureWithColor(Texture2D ogtex, Color color)
        {
            Texture2D tex = TextureHelper.GetReadableTexture(ogtex);

            for (int x = 0; x < tex.width; x++)
            {
                for (int y = 0; y < tex.height; y++)
                {
                    Color oColor = tex.GetPixel(x, y);
                    tex.SetPixel(x, y, oColor * color);
                }
            }
            tex.Apply();
            return(tex);
        }
コード例 #4
0
ファイル: Converter.cs プロジェクト: SuperiorJacob/Unable
        //--End--Gradient

        public static Texture2DArray PathsToTexture2DArray(string[] paths)
        {
            if (paths[0].EndsWith(".gif"))
            {
                return(Converter.GifToTextureArray(paths[0]));
            }
            else
            {
                List <Texture2D> textures = new List <Texture2D>();
                foreach (string p in paths)
                {
                    if (AssetDatabase.GetMainAssetTypeAtPath(p).IsSubclassOf(typeof(Texture)))
                    {
                        textures.Add(TextureHelper.GetReadableTexture(AssetDatabase.LoadAssetAtPath <Texture>(p)));
                    }
                }
                if (textures.Count > 0)
                {
                    return(Converter.Testure2DListToTexture2DArray(textures, paths[0]));
                }
            }
            return(null);
        }