1 using UnityEditor.Rendering;
2 using UnityEngine.Experimental.Rendering.HDPipeline;
3 using UnityEngine.Rendering;
5 namespace UnityEditor.Experimental.Rendering.HDPipeline
7 using UnityObject = UnityEngine.Object;
12 // [CustomEditor(typeof(TestComponent)]
13 // class TestEditor : HDBaseEditor<TestComponent>
15 // SerializedProperty m_MyFloat;
17 // protected override void OnEnable()
20 // m_MyFloat = properties.Find(x => x.myFloat);
23 // public override void OnInspectorGUI()
25 // EditorGUILayout.PropertyField(m_MyFloat);
29 public class HDBaseEditor<T> : Editor
32 internal PropertyFetcher<T> properties { get; private set; }
36 get { return target as T; }
39 protected T[] m_Targets
41 get { return targets as T[]; }
44 protected HDRenderPipeline m_HDPipeline
46 get { return RenderPipelineManager.currentPipeline as HDRenderPipeline; }
49 protected virtual void OnEnable()
51 properties = new PropertyFetcher<T>(serializedObject);