public Material getMaterial(GAFAnimationAsset _Asset, uint _ObjectID, string _TextureName) { if (!System.Object.Equals(_Asset, null)) { if (_Asset.maskedObjects.Contains((int)_ObjectID)) { Material material = new Material(Shader.Find(m_sMaskedObjectShaderPath)); material.color = new Color(1f, 1f, 1f, 1f); material.mainTexture = getTexture(_TextureName); return(material); } else if (_Asset.coloredObjects.Contains((int)_ObjectID)) { Material material = new Material(Shader.Find(m_sColorizedObjectShaderPath)); material.color = new Color(1f, 1f, 1f, 1f); material.mainTexture = getTexture(_TextureName); return(material); } else if (_Asset.batchableObjects.Contains((int)_ObjectID)) { #if UNITY_EDITOR if (!GAFAssetUtils.checkAssets(ref m_SharedMaterials) || m_SharedMaterials.Find(material => material.name == _TextureName) == null) { createSharedData(); AssetDatabase.SaveAssets(); } #endif // UNITY_EDITOR return(m_SharedMaterials.Find(material => material.name == _TextureName)); } } return(null); }
public Texture2D getTexture(string _Name) { #if UNITY_EDITOR GAFAssetUtils.checkAssets(ref m_Textures); #endif // UNITY_EDITOR return(m_Textures.Find(texture => texture.name == _Name)); }
private bool containsTexture(Texture2D _Texture) { GAFAssetUtils.checkAssets(ref m_Textures); return(m_Textures.Contains(_Texture) || m_Textures.Find(texture => texture.name == _Texture.name) != null); }