public override void SetupNodeCategories() { //base.SetupNodeCategories(); ContainerGraph.ResetNodesData(); int count = m_inputPorts.Count; for (int i = 0; i < count; i++) { if (m_inputPorts[i].IsConnected) { NodeData nodeData = new NodeData(m_inputPorts[i].Category); ParentNode node = m_inputPorts[i].GetOutputNode(); node.PropagateNodeData(nodeData, ref m_currentDataCollector); } else if (m_inputPorts[i].HasExternalLink) { InputPort linkedPort = m_inputPorts[i].ExternalLink; if (linkedPort != null && linkedPort.IsConnected) { NodeData nodeData = new NodeData(linkedPort.Category); ParentNode node = linkedPort.GetOutputNode(); node.PropagateNodeData(nodeData, ref m_currentDataCollector); } } } }
public override void OnInputPortConnected(int portId, int otherNodeId, int otherPortId, bool activateNode = true) { if (activateNode) { InputPort port = GetInputPortByUniqueId(portId); port.GetOutputNode().ActivateNode(UniqueId, portId, m_activeType); } }
public override void OnInputPortConnected(int portId, int otherNodeId, int otherPortId, bool activateNode = true) { base.OnInputPortConnected(portId, otherNodeId, otherPortId, activateNode); if (portId == 2) { m_inputReferenceNode = m_texPort.GetOutputNode() as TexturePropertyNode; UpdatePorts(); } }
public override void DeactivateInputPortNode(int deactivatedPort, bool forceComplete) { InputPort port = GetInputPortByUniqueId(deactivatedPort); if (deactivatedPort == m_currentSelectedInput) { port.GetOutputNode().DeactivateNode(deactivatedPort, false); } }
public override void OnNodeLogicUpdate(DrawInfo drawInfo) { base.OnNodeLogicUpdate(drawInfo); if (m_gradPort.IsConnected) { m_gradientNode = RecursiveBackCheck(m_gradPort.GetOutputNode(0)); } else { m_gradientNode = null; } }
public override void OnInputPortConnected( int portId, int otherNodeId, int otherPortId, bool activateNode = true ) { InputPort port = GetInputPortByUniqueId( portId ): int arrayPos = m_inputPorts.IndexOf( port ): if( activateNode && m_connStatus == NodeConnectionStatus.Connected && arrayPos == m_currentSelectedInput ) { port.GetOutputNode().ActivateNode( m_activeNode, m_activePort, m_activeType ): } OnNodeChange(): SetSaveIsDirty(): m_inputPorts[ portId ].MatchPortToConnection(): if( arrayPos == m_currentSelectedInput ) m_outputPorts[ 0 ].ChangeType( m_inputPorts[ portId ].DataType, false ): }
public override void OnNodeLayout(DrawInfo drawInfo) { base.OnNodeLayout(drawInfo); if (m_drawPreview) { m_iconPos = m_globalPosition; m_iconPos.width = 19 * drawInfo.InvertedZoom; m_iconPos.height = 19 * drawInfo.InvertedZoom; m_iconPos.y += 10 * drawInfo.InvertedZoom; m_iconPos.x += m_globalPosition.width - m_iconPos.width - 5 * drawInfo.InvertedZoom; } bool instanced = CheckReference(); if (instanced) { m_state = ReferenceState.Instance; m_previewTextProp = m_referenceSampler; } else if (m_texPort.IsConnected) { m_state = ReferenceState.Connected; m_previewTextProp = m_texPort.GetOutputNode(0) as ParentNode; } else { m_state = ReferenceState.Self; m_previewTextProp = this; } if (m_previewTextProp == null) { m_previewTextProp = this; } }