From b82da95b5181ac8bbae38efb13e950d5e88a4caa Mon Sep 17 00:00:00 2001 From: chai Date: Fri, 23 Oct 2020 13:08:43 +0800 Subject: =?UTF-8?q?*=E7=A7=BB=E5=8A=A8amplify=20shader=20editor=E5=88=B0th?= =?UTF-8?q?ird=20party=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Plugins/Editor/Menu/ShaderLibrary.cs | 91 ++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Menu/ShaderLibrary.cs (limited to 'Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Menu/ShaderLibrary.cs') diff --git a/Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Menu/ShaderLibrary.cs b/Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Menu/ShaderLibrary.cs new file mode 100644 index 00000000..e405e2e2 --- /dev/null +++ b/Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Menu/ShaderLibrary.cs @@ -0,0 +1,91 @@ +// Amplify Shader Editor - Visual Shader Editing Tool +// Copyright (c) Amplify Creations, Lda + +using UnityEditor; +using System.Collections.Generic; +using System; +using UnityEngine; + +namespace AmplifyShaderEditor +{ + [Serializable] + public class ShaderLibrary : EditorWindow + { + private const string SHADER_LIB_FILE = "/AmplifyShaderEditor/Resources/ShaderLibrary/ShaderLibrary.txt"; + private bool m_init = false; + private Vector2 m_scrollPos = new Vector2(); + [SerializeField] + private List m_shaders = new List(); + void Init() + { + m_init = true; + string list = IOUtils.LoadTextFileFromDisk( Application.dataPath + SHADER_LIB_FILE ); + if ( String.IsNullOrEmpty( list ) ) + return; + + string[] listArr = list.Split( IOUtils.FIELD_SEPARATOR ); + for ( int i = 0; i < listArr.Length; i++ ) + { + m_shaders.Add( listArr[ i ] ); + } + + UIUtils.MainSkin.customStyles[ 10 ].active.background = Texture2D.whiteTexture; + + UIUtils.MainSkin.customStyles[ 6 ].fixedHeight = UIUtils.MainSkin.customStyles[ 6 ].normal.background.height; + UIUtils.MainSkin.customStyles[ 6 ].fixedWidth = UIUtils.MainSkin.customStyles[ 6 ].normal.background.width; + + UIUtils.MainSkin.customStyles[ 7 ].fixedHeight = UIUtils.MainSkin.customStyles[ 7 ].normal.background.height; + UIUtils.MainSkin.customStyles[ 7 ].fixedWidth = UIUtils.MainSkin.customStyles[ 7 ].normal.background.width; + + UIUtils.MainSkin.customStyles[ 8 ].fixedHeight = UIUtils.MainSkin.customStyles[ 8 ].normal.background.height; + UIUtils.MainSkin.customStyles[ 8 ].fixedWidth = UIUtils.MainSkin.customStyles[ 8 ].normal.background.width; + + UIUtils.MainSkin.customStyles[ 9 ].fixedHeight = UIUtils.MainSkin.customStyles[ 9 ].normal.background.height; + UIUtils.MainSkin.customStyles[ 9 ].fixedWidth = UIUtils.MainSkin.customStyles[ 9 ].normal.background.width; + + } + + void OnGUI() + { + if ( !m_init ) + { + Init(); + } + + Rect availableArea = position; + + availableArea.y = 100f; + availableArea.x = 0.05f * availableArea.width; + availableArea.height *= 0.5f; + availableArea.width *= 0.9f; + EditorGUILayout.BeginVertical(); + { + EditorGUILayout.LabelField( "Shader Library", UIUtils.MainSkin.customStyles[ 5 ] ); + GUILayout.Space( 10 ); + EditorGUILayout.BeginHorizontal(); + { + GUILayout.Space( 0.05f * position.width ); + GUILayout.Button( string.Empty, UIUtils.MainSkin.customStyles[ 8 ] ); + GUILayout.Button( string.Empty, UIUtils.MainSkin.customStyles[ 9 ] ); + GUILayout.Space( 0.8f*position.width ); + GUILayout.Button( string.Empty, UIUtils.MainSkin.customStyles[ 7 ] ); + GUILayout.Button( string.Empty, UIUtils.MainSkin.customStyles[ 6 ] ); + } + EditorGUILayout.EndHorizontal(); + + GUILayout.BeginArea( availableArea ); + m_scrollPos = EditorGUILayout.BeginScrollView( m_scrollPos, UIUtils.MainSkin.box ); + { + for ( int i = 0; i < m_shaders.Count; i++ ) + { + GUILayout.Button( m_shaders[ i ], UIUtils.MainSkin.customStyles[ 10 ] ); + } + } + EditorGUILayout.EndScrollView(); + GUILayout.EndArea(); + } + EditorGUILayout.EndVertical(); + + } + } +} -- cgit v1.1-26-g67d0