From a10eea6e4ce647061813519d5b0ea496f29495b9 Mon Sep 17 00:00:00 2001
From: leonard Wu <364452445@qq.com>
Date: 星期四, 09 八月 2018 09:47:08 +0800
Subject: [PATCH] 同步最新svn内容
---
Assets/Plugins/PostProcessing/Runtime/Models/AntialiasingModel.cs | 484 ++++++++++++++++++++++++++--------------------------
1 files changed, 242 insertions(+), 242 deletions(-)
diff --git a/Assets/Plugins/PostProcessing/Runtime/Models/AntialiasingModel.cs b/Assets/Plugins/PostProcessing/Runtime/Models/AntialiasingModel.cs
index 05e73a7..4da8151 100644
--- a/Assets/Plugins/PostProcessing/Runtime/Models/AntialiasingModel.cs
+++ b/Assets/Plugins/PostProcessing/Runtime/Models/AntialiasingModel.cs
@@ -1,242 +1,242 @@
-using System;
-
-namespace UnityEngine.PostProcessing
-{
- [Serializable]
- public class AntialiasingModel : PostProcessingModel
- {
- public enum Method
- {
- Fxaa,
- Taa
- }
-
- // Most settings aren't exposed to the user anymore, presets are enough. Still, I'm leaving
- // the tooltip attributes in case an user wants to customize each preset.
-
- #region FXAA Settings
- public enum FxaaPreset
- {
- ExtremePerformance,
- Performance,
- Default,
- Quality,
- ExtremeQuality
- }
-
- [Serializable]
- public struct FxaaQualitySettings
- {
- [Tooltip("The amount of desired sub-pixel aliasing removal. Effects the sharpeness of the output.")]
- [Range(0f, 1f)]
- public float subpixelAliasingRemovalAmount;
-
- [Tooltip("The minimum amount of local contrast required to qualify a region as containing an edge.")]
- [Range(0.063f, 0.333f)]
- public float edgeDetectionThreshold;
-
- [Tooltip("Local contrast adaptation value to disallow the algorithm from executing on the darker regions.")]
- [Range(0f, 0.0833f)]
- public float minimumRequiredLuminance;
-
- public static FxaaQualitySettings[] presets =
- {
- // ExtremePerformance
- new FxaaQualitySettings
- {
- subpixelAliasingRemovalAmount = 0f,
- edgeDetectionThreshold = 0.333f,
- minimumRequiredLuminance = 0.0833f
- },
-
- // Performance
- new FxaaQualitySettings
- {
- subpixelAliasingRemovalAmount = 0.25f,
- edgeDetectionThreshold = 0.25f,
- minimumRequiredLuminance = 0.0833f
- },
-
- // Default
- new FxaaQualitySettings
- {
- subpixelAliasingRemovalAmount = 0.75f,
- edgeDetectionThreshold = 0.166f,
- minimumRequiredLuminance = 0.0833f
- },
-
- // Quality
- new FxaaQualitySettings
- {
- subpixelAliasingRemovalAmount = 1f,
- edgeDetectionThreshold = 0.125f,
- minimumRequiredLuminance = 0.0625f
- },
-
- // ExtremeQuality
- new FxaaQualitySettings
- {
- subpixelAliasingRemovalAmount = 1f,
- edgeDetectionThreshold = 0.063f,
- minimumRequiredLuminance = 0.0312f
- }
- };
- }
-
- [Serializable]
- public struct FxaaConsoleSettings
- {
- [Tooltip("The amount of spread applied to the sampling coordinates while sampling for subpixel information.")]
- [Range(0.33f, 0.5f)]
- public float subpixelSpreadAmount;
-
- [Tooltip("This value dictates how sharp the edges in the image are kept; a higher value implies sharper edges.")]
- [Range(2f, 8f)]
- public float edgeSharpnessAmount;
-
- [Tooltip("The minimum amount of local contrast required to qualify a region as containing an edge.")]
- [Range(0.125f, 0.25f)]
- public float edgeDetectionThreshold;
-
- [Tooltip("Local contrast adaptation value to disallow the algorithm from executing on the darker regions.")]
- [Range(0.04f, 0.06f)]
- public float minimumRequiredLuminance;
-
- public static FxaaConsoleSettings[] presets =
- {
- // ExtremePerformance
- new FxaaConsoleSettings
- {
- subpixelSpreadAmount = 0.33f,
- edgeSharpnessAmount = 8f,
- edgeDetectionThreshold = 0.25f,
- minimumRequiredLuminance = 0.06f
- },
-
- // Performance
- new FxaaConsoleSettings
- {
- subpixelSpreadAmount = 0.33f,
- edgeSharpnessAmount = 8f,
- edgeDetectionThreshold = 0.125f,
- minimumRequiredLuminance = 0.06f
- },
-
- // Default
- new FxaaConsoleSettings
- {
- subpixelSpreadAmount = 0.5f,
- edgeSharpnessAmount = 8f,
- edgeDetectionThreshold = 0.125f,
- minimumRequiredLuminance = 0.05f
- },
-
- // Quality
- new FxaaConsoleSettings
- {
- subpixelSpreadAmount = 0.5f,
- edgeSharpnessAmount = 4f,
- edgeDetectionThreshold = 0.125f,
- minimumRequiredLuminance = 0.04f
- },
-
- // ExtremeQuality
- new FxaaConsoleSettings
- {
- subpixelSpreadAmount = 0.5f,
- edgeSharpnessAmount = 2f,
- edgeDetectionThreshold = 0.125f,
- minimumRequiredLuminance = 0.04f
- }
- };
- }
-
- [Serializable]
- public struct FxaaSettings
- {
- public FxaaPreset preset;
-
- public static FxaaSettings defaultSettings
- {
- get
- {
- return new FxaaSettings
- {
- preset = FxaaPreset.Default
- };
- }
- }
- }
- #endregion
-
- #region TAA Settings
- [Serializable]
- public struct TaaSettings
- {
- [Tooltip("The diameter (in texels) inside which jitter samples are spread. Smaller values result in crisper but more aliased output, while larger values result in more stable but blurrier output.")]
- [Range(0.1f, 1f)]
- public float jitterSpread;
-
- [Tooltip("Controls the amount of sharpening applied to the color buffer.")]
- [Range(0f, 3f)]
- public float sharpen;
-
- [Tooltip("The blend coefficient for a stationary fragment. Controls the percentage of history sample blended into the final color.")]
- [Range(0f, 0.99f)]
- public float stationaryBlending;
-
- [Tooltip("The blend coefficient for a fragment with significant motion. Controls the percentage of history sample blended into the final color.")]
- [Range(0f, 0.99f)]
- public float motionBlending;
-
- public static TaaSettings defaultSettings
- {
- get
- {
- return new TaaSettings
- {
- jitterSpread = 0.75f,
- sharpen = 0.3f,
- stationaryBlending = 0.95f,
- motionBlending = 0.85f
- };
- }
- }
- }
- #endregion
-
- [Serializable]
- public struct Settings
- {
- public Method method;
- public FxaaSettings fxaaSettings;
- public TaaSettings taaSettings;
-
- public static Settings defaultSettings
- {
- get
- {
- return new Settings
- {
- method = Method.Fxaa,
- fxaaSettings = FxaaSettings.defaultSettings,
- taaSettings = TaaSettings.defaultSettings
- };
- }
- }
- }
-
- [SerializeField]
- Settings m_Settings = Settings.defaultSettings;
- public Settings settings
- {
- get { return m_Settings; }
- set { m_Settings = value; }
- }
-
- public override void Reset()
- {
- m_Settings = Settings.defaultSettings;
- }
- }
-}
+using System;
+
+namespace UnityEngine.PostProcessing
+{
+ [Serializable]
+ public class AntialiasingModel : PostProcessingModel
+ {
+ public enum Method
+ {
+ Fxaa,
+ Taa
+ }
+
+ // Most settings aren't exposed to the user anymore, presets are enough. Still, I'm leaving
+ // the tooltip attributes in case an user wants to customize each preset.
+
+ #region FXAA Settings
+ public enum FxaaPreset
+ {
+ ExtremePerformance,
+ Performance,
+ Default,
+ Quality,
+ ExtremeQuality
+ }
+
+ [Serializable]
+ public struct FxaaQualitySettings
+ {
+ [Tooltip("The amount of desired sub-pixel aliasing removal. Effects the sharpeness of the output.")]
+ [Range(0f, 1f)]
+ public float subpixelAliasingRemovalAmount;
+
+ [Tooltip("The minimum amount of local contrast required to qualify a region as containing an edge.")]
+ [Range(0.063f, 0.333f)]
+ public float edgeDetectionThreshold;
+
+ [Tooltip("Local contrast adaptation value to disallow the algorithm from executing on the darker regions.")]
+ [Range(0f, 0.0833f)]
+ public float minimumRequiredLuminance;
+
+ public static FxaaQualitySettings[] presets =
+ {
+ // ExtremePerformance
+ new FxaaQualitySettings
+ {
+ subpixelAliasingRemovalAmount = 0f,
+ edgeDetectionThreshold = 0.333f,
+ minimumRequiredLuminance = 0.0833f
+ },
+
+ // Performance
+ new FxaaQualitySettings
+ {
+ subpixelAliasingRemovalAmount = 0.25f,
+ edgeDetectionThreshold = 0.25f,
+ minimumRequiredLuminance = 0.0833f
+ },
+
+ // Default
+ new FxaaQualitySettings
+ {
+ subpixelAliasingRemovalAmount = 0.75f,
+ edgeDetectionThreshold = 0.166f,
+ minimumRequiredLuminance = 0.0833f
+ },
+
+ // Quality
+ new FxaaQualitySettings
+ {
+ subpixelAliasingRemovalAmount = 1f,
+ edgeDetectionThreshold = 0.125f,
+ minimumRequiredLuminance = 0.0625f
+ },
+
+ // ExtremeQuality
+ new FxaaQualitySettings
+ {
+ subpixelAliasingRemovalAmount = 1f,
+ edgeDetectionThreshold = 0.063f,
+ minimumRequiredLuminance = 0.0312f
+ }
+ };
+ }
+
+ [Serializable]
+ public struct FxaaConsoleSettings
+ {
+ [Tooltip("The amount of spread applied to the sampling coordinates while sampling for subpixel information.")]
+ [Range(0.33f, 0.5f)]
+ public float subpixelSpreadAmount;
+
+ [Tooltip("This value dictates how sharp the edges in the image are kept; a higher value implies sharper edges.")]
+ [Range(2f, 8f)]
+ public float edgeSharpnessAmount;
+
+ [Tooltip("The minimum amount of local contrast required to qualify a region as containing an edge.")]
+ [Range(0.125f, 0.25f)]
+ public float edgeDetectionThreshold;
+
+ [Tooltip("Local contrast adaptation value to disallow the algorithm from executing on the darker regions.")]
+ [Range(0.04f, 0.06f)]
+ public float minimumRequiredLuminance;
+
+ public static FxaaConsoleSettings[] presets =
+ {
+ // ExtremePerformance
+ new FxaaConsoleSettings
+ {
+ subpixelSpreadAmount = 0.33f,
+ edgeSharpnessAmount = 8f,
+ edgeDetectionThreshold = 0.25f,
+ minimumRequiredLuminance = 0.06f
+ },
+
+ // Performance
+ new FxaaConsoleSettings
+ {
+ subpixelSpreadAmount = 0.33f,
+ edgeSharpnessAmount = 8f,
+ edgeDetectionThreshold = 0.125f,
+ minimumRequiredLuminance = 0.06f
+ },
+
+ // Default
+ new FxaaConsoleSettings
+ {
+ subpixelSpreadAmount = 0.5f,
+ edgeSharpnessAmount = 8f,
+ edgeDetectionThreshold = 0.125f,
+ minimumRequiredLuminance = 0.05f
+ },
+
+ // Quality
+ new FxaaConsoleSettings
+ {
+ subpixelSpreadAmount = 0.5f,
+ edgeSharpnessAmount = 4f,
+ edgeDetectionThreshold = 0.125f,
+ minimumRequiredLuminance = 0.04f
+ },
+
+ // ExtremeQuality
+ new FxaaConsoleSettings
+ {
+ subpixelSpreadAmount = 0.5f,
+ edgeSharpnessAmount = 2f,
+ edgeDetectionThreshold = 0.125f,
+ minimumRequiredLuminance = 0.04f
+ }
+ };
+ }
+
+ [Serializable]
+ public struct FxaaSettings
+ {
+ public FxaaPreset preset;
+
+ public static FxaaSettings defaultSettings
+ {
+ get
+ {
+ return new FxaaSettings
+ {
+ preset = FxaaPreset.Default
+ };
+ }
+ }
+ }
+ #endregion
+
+ #region TAA Settings
+ [Serializable]
+ public struct TaaSettings
+ {
+ [Tooltip("The diameter (in texels) inside which jitter samples are spread. Smaller values result in crisper but more aliased output, while larger values result in more stable but blurrier output.")]
+ [Range(0.1f, 1f)]
+ public float jitterSpread;
+
+ [Tooltip("Controls the amount of sharpening applied to the color buffer.")]
+ [Range(0f, 3f)]
+ public float sharpen;
+
+ [Tooltip("The blend coefficient for a stationary fragment. Controls the percentage of history sample blended into the final color.")]
+ [Range(0f, 0.99f)]
+ public float stationaryBlending;
+
+ [Tooltip("The blend coefficient for a fragment with significant motion. Controls the percentage of history sample blended into the final color.")]
+ [Range(0f, 0.99f)]
+ public float motionBlending;
+
+ public static TaaSettings defaultSettings
+ {
+ get
+ {
+ return new TaaSettings
+ {
+ jitterSpread = 0.75f,
+ sharpen = 0.3f,
+ stationaryBlending = 0.95f,
+ motionBlending = 0.85f
+ };
+ }
+ }
+ }
+ #endregion
+
+ [Serializable]
+ public struct Settings
+ {
+ public Method method;
+ public FxaaSettings fxaaSettings;
+ public TaaSettings taaSettings;
+
+ public static Settings defaultSettings
+ {
+ get
+ {
+ return new Settings
+ {
+ method = Method.Fxaa,
+ fxaaSettings = FxaaSettings.defaultSettings,
+ taaSettings = TaaSettings.defaultSettings
+ };
+ }
+ }
+ }
+
+ [SerializeField]
+ Settings m_Settings = Settings.defaultSettings;
+ public Settings settings
+ {
+ get { return m_Settings; }
+ set { m_Settings = value; }
+ }
+
+ public override void Reset()
+ {
+ m_Settings = Settings.defaultSettings;
+ }
+ }
+}
--
Gitblit v1.8.0