ProjectDDD/Assets/Plugins/Animate UI Materials/IMaterialPropertyModifier.cs

39 lines
1.0 KiB
C#

using UnityEngine;
namespace Plugins.Animate_UI_Materials
{
public interface IMaterialPropertyModifier
{
/// <summary>
/// The name of the shader property that the modifier affects
/// </summary>
string PropertyName { get; }
/// <summary>
/// The display name of the modifier component for the editor
/// </summary>
string DisplayName { get; }
/// <summary>
/// The "enabled" value of the modifier component
/// </summary>
bool enabled { get; set; }
/// <summary>
/// The "gameObject" value of the modifier component
/// </summary>
GameObject gameObject { get; }
/// <summary>
/// Apply the modified property to the material
/// </summary>
/// <param name="material"></param>
void ApplyModifiedProperty(Material material);
/// <summary>
/// Try to retrieve and apply the default property value
/// If the source material cannot be found, reset to sensible defaults
/// </summary>
void ResetPropertyToDefault();
}
}