您最多选择25个主题 主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
 
 
 
 

36 行
1.0 KiB

using UnityEngine;
namespace UnityEditor.Graphs.Material
{
public enum PropertyType
{
Color,
Texture2D,
Float,
Vector4
}
public abstract class ShaderProperty : ScriptableObject, IGenerateProperties
{
[SerializeField]
protected string m_PropertyDescription;
public virtual object value { get; set; }
public virtual void PropertyOnGUI (out bool nameChanged, out bool valuesChanged)
{
EditorGUI.BeginChangeCheck ();
name = EditorGUILayout.TextField("Name", name);
nameChanged = EditorGUI.EndChangeCheck ();
EditorGUI.BeginChangeCheck ();
m_PropertyDescription = EditorGUILayout.TextField("Desc", m_PropertyDescription);
valuesChanged = EditorGUI.EndChangeCheck ();
}
public abstract PropertyType propertyType { get; }
public abstract void GeneratePropertyBlock (PropertyGenerator visitor, GenerationMode generationMode);
public abstract void GeneratePropertyUsages (ShaderGenerator visitor, GenerationMode generationMode);
public abstract string GenerateDefaultValue ();
}
}