Exemplo n.º 1
0
    public static List <UFTMaterialWitTextureProps> getMaterialListByTexture(Texture texture)
    {
        List <UFTMaterialWitTextureProps> result = new List <UFTMaterialWitTextureProps>();

        Material[] allMaterials = (Material[])Resources.FindObjectsOfTypeAll(typeof(Material));

        foreach (Material mat in allMaterials)
        {
            Dictionary <string, Texture> textures = UFTMaterialUtil.getTextures(mat);
            if (textures != null && textures.Count > 0)
            {
                List <string> properties = new List <string>();
                foreach (KeyValuePair <string, Texture> keyValue in textures)
                {
                    if (AssetDatabase.Equals(texture, keyValue.Value))
                    {
                        properties.Add(keyValue.Key);
                    }
                }
                if (properties.Count > 0)
                {
                    result.Add(new UFTMaterialWitTextureProps(mat, properties));
                }
            }
        }
        return(result);
    }