From 917e9e0b320775634dc2e710f7deac74fd0822f0 Mon Sep 17 00:00:00 2001 From: chai Date: Thu, 22 Oct 2020 23:30:02 +0800 Subject: * amplify shader editor --- .../Editor/Templates/TemplateModuleParent.cs | 62 ++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateModuleParent.cs (limited to 'Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateModuleParent.cs') diff --git a/Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateModuleParent.cs b/Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateModuleParent.cs new file mode 100644 index 00000000..cb28c2f3 --- /dev/null +++ b/Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateModuleParent.cs @@ -0,0 +1,62 @@ +// Amplify Shader Editor - Visual Shader Editing Tool +// Copyright (c) Amplify Creations, Lda + +using System; +using UnityEngine; +using UnityEditor; + +namespace AmplifyShaderEditor +{ + [Serializable] + public class TemplateModuleParent + { + private const string UnreadableDataMessagePrefix = "Unreadable data on Module "; + protected string m_unreadableMessage; + + [SerializeField] + protected bool m_validData = false; + + [SerializeField] + protected bool m_isDirty = false; + + [SerializeField] + protected string m_moduleName = string.Empty; + + //[SerializeField] + //protected bool m_foldoutValue = false; + + [SerializeField] + protected bool m_independentModule = true; + + public TemplateModuleParent( string moduleName ) { m_moduleName = moduleName; m_unreadableMessage = UnreadableDataMessagePrefix + moduleName; } + public virtual void Draw( UndoParentNode owner , bool style = true) { } + public virtual void ReadFromString( ref uint index, ref string[] nodeParams ) { } + public virtual void WriteToString( ref string nodeInfo ) { } + public virtual string GenerateShaderData( bool isSubShader ) { return string.Empty; } + public virtual void Destroy() { } + public bool ValidData { get { return m_validData; } } + public bool ValidAndIndependent { get { return m_validData && m_independentModule; } } + + public virtual void ShowUnreadableDataMessage( ParentNode owner ) + { + ShowUnreadableDataMessage(); + } + + public virtual void ShowUnreadableDataMessage() + { + EditorGUILayout.HelpBox( m_unreadableMessage, MessageType.Info ); + } + + public bool IsDirty + { + get { return m_isDirty; } + set { m_isDirty = value; } + } + + public bool IndependentModule + { + get { return m_independentModule; } + set { m_independentModule = value; } + } + } +} -- cgit v1.1-26-g67d0