DepthOfFieldEditor.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233
  1. using UnityEngine;
  2. using UnityEngine.Rendering.PostProcessing;
  3. namespace UnityEditor.Rendering.PostProcessing
  4. {
  5. [PostProcessEditor(typeof(DepthOfField))]
  6. internal sealed class DepthOfFieldEditor : PostProcessEffectEditor<DepthOfField>
  7. {
  8. SerializedParameterOverride m_FocusDistance;
  9. SerializedParameterOverride m_Aperture;
  10. SerializedParameterOverride m_FocalLength;
  11. SerializedParameterOverride m_KernelSize;
  12. public override void OnEnable()
  13. {
  14. m_FocusDistance = FindParameterOverride(x => x.focusDistance);
  15. m_Aperture = FindParameterOverride(x => x.aperture);
  16. m_FocalLength = FindParameterOverride(x => x.focalLength);
  17. m_KernelSize = FindParameterOverride(x => x.kernelSize);
  18. }
  19. public override void OnInspectorGUI()
  20. {
  21. if (SystemInfo.graphicsShaderLevel < 35)
  22. EditorGUILayout.HelpBox("Depth Of Field is only supported on the following platforms:\nDX11+, OpenGL 3.2+, OpenGL ES 3+, Metal, Vulkan, PS4/XB1 consoles.", MessageType.Warning);
  23. PropertyField(m_FocusDistance);
  24. PropertyField(m_Aperture);
  25. PropertyField(m_FocalLength);
  26. PropertyField(m_KernelSize);
  27. }
  28. }
  29. }