diff options
author | chai <chaifix@163.com> | 2022-03-10 14:07:40 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2022-03-10 14:07:40 +0800 |
commit | 22891bf59032ba88262824255a706d652031384b (patch) | |
tree | 7595439ba9966c9402d37e37cee5e8cf098757d5 /Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Utils/SamplerStateAutoGenerator.cs | |
parent | 8b04ea73e540067f83870b61d89db4868fea5e8a (diff) |
* move folder
Diffstat (limited to 'Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Utils/SamplerStateAutoGenerator.cs')
-rw-r--r-- | Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Utils/SamplerStateAutoGenerator.cs | 203 |
1 files changed, 0 insertions, 203 deletions
diff --git a/Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Utils/SamplerStateAutoGenerator.cs b/Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Utils/SamplerStateAutoGenerator.cs deleted file mode 100644 index 8be253c4..00000000 --- a/Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Utils/SamplerStateAutoGenerator.cs +++ /dev/null @@ -1,203 +0,0 @@ -// Amplify Shader Editor - Visual Shader Editing Tool -// Copyright (c) Amplify Creations, Lda <info@amplify.pt> - -using System; -using System.Collections.Generic; -using UnityEngine; -using UnityEditor; - -namespace AmplifyShaderEditor -{ - public enum InlineSamplerFilteringMode - { - Point, - Linear, - Trilinear - }; - - public enum InlineSamplerWrapMode - { - Clamp, - Repeat, - Mirror, - MirrorOnce - }; - - public enum InlineSamplerWrapCoordinates - { - All, - U, - V, - W - }; - - [Serializable] - public class InlineSamplerWrapOptions - { - public InlineSamplerWrapMode WrapMode = InlineSamplerWrapMode.Clamp; - public InlineSamplerWrapCoordinates Coordinates = InlineSamplerWrapCoordinates.All; - public string InlineValue - { - get - { - string name = "_"+WrapMode.ToString(); - if( Coordinates != InlineSamplerWrapCoordinates.All ) - name += Coordinates.ToString(); - name += "_"; - return name; - } - } - } - - [Serializable] - public class SamplerStateAutoGenerator - { - private const int MaxCount = 3; - private const float ButtonLayoutWidth = 15; - private const string AdditionalWrapsStr = "Additional Wraps"; - private const string InlineSamplerStateStr = "Inline Sampler State"; - - [SerializeField] - private InlineSamplerFilteringMode m_filterMode = InlineSamplerFilteringMode.Point; - - [SerializeField] - private InlineSamplerWrapOptions m_mainWrapMode = new InlineSamplerWrapOptions(); - - [SerializeField] - private List<InlineSamplerWrapOptions> m_additionalWrapOptions = new List<InlineSamplerWrapOptions>(); - - [SerializeField] - private bool m_visibleWrapsFoldout = false; - - [SerializeField] - private bool m_visibleMainFoldout = false; - - [NonSerialized] - private UndoParentNode m_owner; - - public void Destroy() - { - m_mainWrapMode = null; - m_additionalWrapOptions.Clear(); - m_additionalWrapOptions = null; - } - - public string AddToDataCollector( ref MasterNodeDataCollector dataCollector ) - { - string inlineSampler = "sampler_"; - - inlineSampler += m_filterMode.ToString(); - inlineSampler += m_mainWrapMode.InlineValue; - - int count = m_additionalWrapOptions.Count; - for( int i = 0; i < count; i++ ) - { - inlineSampler += m_additionalWrapOptions[ i ].InlineValue; - } - return inlineSampler; - } - - void DrawAddRemoveButtons() - { - int count = m_additionalWrapOptions.Count; - if( count < MaxCount && m_owner.GUILayoutButton( string.Empty, UIUtils.PlusStyle, GUILayout.Width( ButtonLayoutWidth ) ) ) - { - m_additionalWrapOptions.Add( new InlineSamplerWrapOptions() ); - EditorGUI.FocusTextInControl( null ); - } - - if( count > 0 && m_owner.GUILayoutButton( string.Empty, UIUtils.MinusStyle, GUILayout.Width( ButtonLayoutWidth ) ) ) - { - m_additionalWrapOptions.RemoveAt( count - 1 ); - EditorGUI.FocusTextInControl( null ); - } - } - - public void Draw( UndoParentNode owner ) - { - m_owner = owner; - NodeUtils.DrawNestedPropertyGroup( ref m_visibleMainFoldout, InlineSamplerStateStr, DrawMain ); - } - - void DrawMain() - { - m_filterMode = (InlineSamplerFilteringMode)m_owner.EditorGUILayoutEnumPopup( m_filterMode ); - - EditorGUILayout.BeginHorizontal(); - m_mainWrapMode.WrapMode = (InlineSamplerWrapMode)m_owner.EditorGUILayoutEnumPopup( m_mainWrapMode.WrapMode ); - m_mainWrapMode.Coordinates = (InlineSamplerWrapCoordinates)m_owner.EditorGUILayoutEnumPopup( m_mainWrapMode.Coordinates ); - EditorGUILayout.EndHorizontal(); - NodeUtils.DrawNestedPropertyGroup( ref m_visibleWrapsFoldout, AdditionalWrapsStr, DrawAdditionalWrapModes, DrawAddRemoveButtons ); - } - - void DrawAdditionalWrapModes() - { - EditorGUILayout.Space(); - int count = m_additionalWrapOptions.Count; - for( int i = 0; i < count; i++ ) - { - float maxWidth = 90; - EditorGUILayout.BeginHorizontal(); - m_additionalWrapOptions[ i ].WrapMode = (InlineSamplerWrapMode)m_owner.EditorGUILayoutEnumPopup( m_additionalWrapOptions[ i ].WrapMode ,GUILayout.MaxWidth( maxWidth ) ); - m_additionalWrapOptions[ i ].Coordinates = (InlineSamplerWrapCoordinates)m_owner.EditorGUILayoutEnumPopup( m_additionalWrapOptions[ i ].Coordinates, GUILayout.MaxWidth( maxWidth ) ); - EditorGUILayout.EndHorizontal(); - } - } - - public void ReadFromString( ref uint index, ref string[] nodeParams ) - { -#if UNITY_2019_3_OR_NEWER - Enum.TryParse<InlineSamplerFilteringMode>( nodeParams[ index++ ], out m_filterMode ); - Enum.TryParse<InlineSamplerWrapCoordinates>( nodeParams[ index++ ], out m_mainWrapMode.Coordinates ); - - int count = 0; - int.TryParse( nodeParams[ index++ ], out count ); - for( int i = 0; i < count; i++ ) - { - InlineSamplerWrapOptions option = new InlineSamplerWrapOptions(); - - Enum.TryParse<InlineSamplerWrapMode>( nodeParams[ index++ ], out option.WrapMode ); - Enum.TryParse<InlineSamplerWrapCoordinates>( nodeParams[ index++ ], out option.Coordinates ); - - m_additionalWrapOptions.Add( option ); - } -#else - m_filterMode =(InlineSamplerFilteringMode) Enum.Parse( typeof( InlineSamplerFilteringMode ), nodeParams[ index++ ] ); - m_mainWrapMode.Coordinates = (InlineSamplerWrapCoordinates)Enum.Parse( typeof( InlineSamplerWrapCoordinates ),nodeParams[ index++ ] ); - - int count = 0; - int.TryParse( nodeParams[ index++ ], out count ); - for( int i = 0; i < count; i++ ) - { - InlineSamplerWrapOptions option = new InlineSamplerWrapOptions(); - - option.WrapMode = ( InlineSamplerWrapMode)Enum.Parse(typeof( InlineSamplerWrapMode ), nodeParams[ index++ ] ); - option.Coordinates = ( InlineSamplerWrapCoordinates)Enum.Parse(typeof( InlineSamplerWrapCoordinates ), nodeParams[ index++ ] ); - - m_additionalWrapOptions.Add( option ); - } -#endif - - } - - public void WriteToString( ref string nodeInfo ) - { - IOUtils.AddFieldValueToString( ref nodeInfo, m_filterMode ); - - IOUtils.AddFieldValueToString( ref nodeInfo, m_mainWrapMode.WrapMode ); - IOUtils.AddFieldValueToString( ref nodeInfo, m_mainWrapMode.Coordinates ); - - int count = m_additionalWrapOptions.Count; - IOUtils.AddFieldValueToString( ref nodeInfo, count ); - if( count > 0 ) - { - for( int i = 0; i < count; i++ ) - { - IOUtils.AddFieldValueToString( ref nodeInfo, m_additionalWrapOptions[i].WrapMode ); - IOUtils.AddFieldValueToString( ref nodeInfo, m_additionalWrapOptions[i].Coordinates ); - } - } - - } - } -} |