summaryrefslogtreecommitdiff
path: root/Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateOptionsPort.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateOptionsPort.cs')
-rw-r--r--Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateOptionsPort.cs174
1 files changed, 0 insertions, 174 deletions
diff --git a/Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateOptionsPort.cs b/Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateOptionsPort.cs
deleted file mode 100644
index 04c11872..00000000
--- a/Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplateOptionsPort.cs
+++ /dev/null
@@ -1,174 +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;
-
-namespace AmplifyShaderEditor
-{
- // PORT CONTROLLERS
- [Serializable]
- public class TemplateOptionPortItem
- {
- [SerializeField]
- private int m_portId = -1;
-
- [SerializeField]
- private TemplateOptionsItem m_options;
-
- public TemplateOptionPortItem( TemplateMultiPassMasterNode owner, TemplateOptionsItem options )
- {
- m_options = options;
- InputPort port = owner.InputPorts.Find( x => x.Name.Equals( options.Name ) );
- if( port != null )
- {
- m_portId = port.PortId;
- }
- }
-
- public void FillDataCollector( TemplateMultiPassMasterNode owner, ref MasterNodeDataCollector dataCollector )
- {
- InputPort port = null;
- if( m_portId > -1 )
- {
- port = owner.GetInputPortByUniqueId( m_portId );
- }
- else
- {
- port = owner.InputPorts.Find( x => x.Name.Equals( m_options.Name ) );
- }
-
- if( port != null )
- {
- int optionId = port.HasOwnOrLinkConnection ? 0 : 1;
- for( int i = 0; i < m_options.ActionsPerOption[ optionId ].Length; i++ )
- {
- switch( m_options.ActionsPerOption[ optionId ][ i ].ActionType )
- {
- case AseOptionsActionType.SetDefine:
- {
- List<TemplateMultiPassMasterNode> nodes = owner.ContainerGraph.GetMultiPassMasterNodes( owner.LODIndex );
- int count = nodes.Count;
- for( int nodeIdx = 0; nodeIdx < count; nodeIdx++ )
- {
- nodes[ nodeIdx ].OptionsDefineContainer.AddDefine( "#define "+m_options.ActionsPerOption[ optionId ][ i ].ActionData, false );
- }
- //dataCollector.AddToDefines( -1, m_options.ActionsPerOption[ optionId ][ i ].ActionData );
- }
- break;
- case AseOptionsActionType.SetUndefine:
- {
- List<TemplateMultiPassMasterNode> nodes = owner.ContainerGraph.GetMultiPassMasterNodes( owner.LODIndex );
- int count = nodes.Count;
- for( int nodeIdx = 0; nodeIdx < count; nodeIdx++ )
- {
- nodes[ nodeIdx ].OptionsDefineContainer.AddDefine( "#undef " + m_options.ActionsPerOption[ optionId ][ i ].ActionData, false );
- }
- //dataCollector.AddToDefines( -1, m_options.ActionsPerOption[ optionId ][ i ].ActionData, false );
- }
- break;
- case AseOptionsActionType.SetShaderProperty:
- {
- TemplateShaderPropertyData data = owner.CurrentTemplate.GetShaderPropertyData( m_options.ActionsPerOption[ optionId ][ i ].ActionData );
- if( data != null )
- {
- string newPropertyValue = data.CreatePropertyForValue( m_options.ActionsPerOption[ optionId ][ i ].ActionBuffer );
- owner.CurrentTemplate.IdManager.SetReplacementText( data.FullValue, newPropertyValue );
- }
- }
- break;
- }
- }
- }
- }
-
- public void SubShaderFillDataCollector( TemplateMultiPassMasterNode owner, ref MasterNodeDataCollector dataCollector )
- {
-
- //TemplateMultiPassMasterNode targetNode = string.IsNullOrEmpty(m_options.Id) ? owner:owner.ContainerGraph.GetMasterNodeOfPass( m_options.Id , owner.LODIndex );
- TemplateMultiPassMasterNode targetNode = string.IsNullOrEmpty( m_options.Id ) ?
- owner.ContainerGraph.GetMainMasterNodeOfLOD( owner.LODIndex ) :
- owner.ContainerGraph.GetMasterNodeOfPass( m_options.Id , owner.LODIndex );
-
- InputPort port = null;
- if( m_portId > -1 )
- {
- port = targetNode.GetInputPortByUniqueId( m_portId );
- }
- else
- {
- port = targetNode.InputPorts.Find( x => x.Name.Equals( m_options.Name ) );
- }
-
- if( port != null )
- {
- int optionId = port.HasOwnOrLinkConnection ? 0 : 1;
- for( int i = 0; i < m_options.ActionsPerOption[ optionId ].Length; i++ )
- {
- if( string.IsNullOrEmpty( m_options.ActionsPerOption[ optionId ][ i ].PassName ) ||
- m_options.ActionsPerOption[ optionId ][ i ].PassName.Equals( owner.PassName ) )
- {
- switch( m_options.ActionsPerOption[ optionId ][ i ].ActionType )
- {
- case AseOptionsActionType.SetDefine:
- {
- owner.OptionsDefineContainer.AddDefine( "#define " + m_options.ActionsPerOption[ optionId ][ i ].ActionData, true );
- }
- break;
- case AseOptionsActionType.SetUndefine:
- {
- owner.OptionsDefineContainer.AddDefine( "#undef " + m_options.ActionsPerOption[ optionId ][ i ].ActionData, true );
- }
- break;
- case AseOptionsActionType.SetShaderProperty:
- {
- TemplateShaderPropertyData data = owner.CurrentTemplate.GetShaderPropertyData( m_options.ActionsPerOption[ optionId ][ i ].ActionData );
- if( data != null )
- {
- string newPropertyValue = data.CreatePropertyForValue( m_options.ActionsPerOption[ optionId ][ i ].ActionBuffer );
- owner.CurrentTemplate.IdManager.SetReplacementText( data.FullValue, newPropertyValue );
- }
- }
- break;
- }
- }
- }
- }
- }
-
- public void CheckImediateActionsForPort( TemplateMultiPassMasterNode owner, int portId )
- {
- if( portId != m_portId )
- return;
-
- InputPort port = null;
- if( m_portId > -1 )
- {
- port = owner.GetInputPortByUniqueId( m_portId );
- }
- else
- {
- port = owner.InputPorts.Find( x => x.Name.Equals( m_options.Name ) );
- }
-
- if( port != null )
- {
- int optionId = port.HasOwnOrLinkConnection ? 0 : 1;
- for( int i = 0; i < m_options.ActionsPerOption[ optionId ].Length; i++ )
- {
- switch( m_options.ActionsPerOption[ optionId ][ i ].ActionType )
- {
- case AseOptionsActionType.SetPortName:
- {
- port.Name = m_options.ActionsPerOption[ optionId ][ i ].ActionData;
- owner.SizeIsDirty = true;
- }
- break;
- }
- }
- }
- }
- public TemplateOptionsItem Options { get { return m_options; } }
- }
-}