Previous Topic (Particle Channels Editor Node Depot) Up (Particle Channels Editor) Next Topic (Particle Channels Editor Update)

Navigation And Editing In the MagmaFlow Editor

 Available in Krakatoa v1.5.0 and higher

Selecting, Editing and Manipulating Nodes

  • To select a node, click it with the mouse.
  • To select multiple nodes, either hold Ctrl and click multiple times, or window-select multiple nodes.
  • To select all nodes (except Output), press Ctrl+A
  • To deselect one node, hold down Alt and click the node with the mouse.
  • To deselect all nodes, click the background outside a node or press Ctrl+D.
  • To move one or more nodes, select them, click and hold the left mouse button and move.
  • To edit the mode/type of a node, select a single node to display its properties in the command panel on the right side of the UI.

Pan and Zoom Navigation

  • Most of the following operations are also available from the Main Menu > View and from the background right-click menu, but using the keyboard shortcuts or the UI buttons is faster.

Zoom

  • To zoom in and out of the node-based editor, roll mouse wheel. The Krakatoa Channel Editor does not allow Zoom At Mouse Position.
  • To zoom in or out to see all nodes, either press the Zoom Extents icon in the lower right corner of the UI or hit the Z key.
  • To zoom into the currently selected node(s), either press the Zoom Extents Selected icon in the lower right corner of the UI or hit the Shift+Z keys.
  • To reset the zoom to factor of 1.0, press the No Zoom icon (magnifying glass with red X) or hit the X key.

Pan

  • To pan in the node-based editor, press and hold the middle mouse button and mouse the mouse around.
  • To reset the pan to the default value, either press the No Pan icon (hand with red X) in the lower right corner of the UI or hit Shift+X

Both

  • To reset both the pan and the zoom to their default values, right-click either of the four icons in the bottom right corner of the editor.

Temporarily Disabling Nodes

  • A node can be disabled temporarily without being deleted from the flow.
  • The shortcut to disable a node is Ctrl+P (Pass-Through, inspired by Eyeon Fusion)
  • When a node is set to disabled, it will be drawn in 50% darker color.
  • A disabled node will not be evaluated, but if the node is an Operator with valid First Input slot and Output connections, the data from the first input will be passed through to the output without changes, thus allowing you to disable mathematical operations temporarily.
  • If an Input node is disabled, it will be considered unconnected.

Deleting Nodes

  • One node can be deleted by right-clicking it and selecting Delete Node.
  • One or more selected nodes can be deleted from the flow permanently by using the Del. key on the Numeric keypad. All connections will be deleted,too.
  • An Operator node can be removed from the flow while preserving its first input and its output connections by pressing the Backspace key.

Creating Connections Manually

  • To create a connection between two nodes, click and drag either the output or the input socket of one node and drag while holding the left mouse button pressed to the input or output socket of the second node.
  • Alternatively, select exactly two nodes - either one Input and one Operator or two Operators - and hit the Spacebar to connect the Output of the Input node or first Operator to the first empty input socket of the other node.
  • If two Operators are selected, the order of connection will be from the Operator with the lower number to the Operator with the higher number (the number is shown in the title of the node and represents the order of node creation).
    • Pressing Shift+Spacebar will invert the order to connect in the other direction, from the higher number to the lower number.
    • When one of the two nodes is an Input node, holding Shift changes nothing.
    • If both nodes are Input nodes, no connection will be created.
  • Cyclic connections are not allowed - if you attempt to connect the output of a node to its own input or to the input of another node already connected in the tree, the connection will not be created and an error message will be shown in the log.

Swapping Connection Order

  • To swap the First and Second Input of an Operator, press Ctrl+W. This is inspired by Eyeon Fusion. This works for one-input operators, too. If you switch an Add Operator with two valid inputs to Negate, pressing Ctrl+W will select which of the two existing (but one hidden) input to use.
  • To swap the Second and Third Inputs of an Operator like Blend, Clamp or ToVector, hold down Shift+Ctrl+W. This does not work with operators with less than 3 inputs.

Deleting Connections

  • When a node is deleted using the Del. key or the Delete Node right-click menu command, all its connections will also be deleted.
  • A connection can be selected with the mouse and deleted with the Del. key on the Numeric keypad.
  • A connection can be disconnected by creating the same connection again.
  • The node right-click context menu provides the options to disconnect all Inputs or all Outputs of the node under the mouse pointer.
  • The editor right-click context menu and the node menu provide the options to disconnect all Inputs or all Outputs of all selected nodes. Thus, pressing Ctrl+A to select all and using the disconnect option will remove all connections except for the one of the Output node which is not selectable by Ctrl+A.
  • Holding Shift while moving a node will disconnect both Inputs and Outputs of the node, removing it from the flow while keeping it in the editor (this is inspired by Eyeon Fusion). The first Input will be wired to the Output of the node (if any). All other inputs will be disconnected without rewiring.
  • Holding Shift while pressing Backspace will also disconnect all Inputs and Outputs of the node without deleting it from the scene.
  • Note that since an input can have only one upstream node, connecting a new connection to a socket that is connected already will remove the existing connection automatically.

Automatic Connections

  • One of the more tedious aspects of creating flows is connecting the nodes since it requires precise mouse control.
  • The Krakatoa Channel Editor provides several mechanisms for connect nodes automatically depending on the current selection.

The First Connection Is Free

  • When a new Flow is created (using Ctrl+N), the Output operator is the only operator in the flow.
  • Although there are no other nodes in the flow, the Output operator is already set to connect to the second operator.
  • As result, creating a second operator automatically creates a connection to the Output node.
  • This way, if you just want to copy the content of one channel into another, or reset a channel to a custom value, all you have to do is hit I to create an input node and the flow will be ready.
  • In conjunction with the other methods described below, this first connection can also turn out helpful.

Creating an Operator With Selected Upstream Nodes

  • When an Operator is created, the current node selection is checked and the selected nodes are connected to it automatically.
    • If one Input or Operator node is selected and a new Operator is created, the selected node will be connected to the First Input of the Operator. If the O shortcut was used, the Operator will also be switched to a mode which is the most common for the input type.
      • If a single Vector or TextureMap Input is selected, the Operator will be inserted in Magnitude mode.
      • If a single Float Input is selected, the Operator will be inserted in Negate mode.
      • If a single Integer Input is selected, the Operator will be inserted in ToFloat mode.
    • If two Input or Operator nodes are selected and a new Operator is created, the selected nodes will be connected to the First and Second Inputs of the Operator.
      • The order of connection will depend on the order of creation of the nodes - the earlier created one will go to the First Input. You can swap the inputs by pressing Ctrl+W.
      • If the O shortcut was used, the Operator will also be switched to "Add" mode which has two inputs and is the most common Two-Input mode.
      • If a One-Input mode was selected,the two selected nodes will still be connected to the two input sockets, but the second connection will not be shown unless the Operator is switched to a two or three-input mode. In one-input mode, the second connection will be ignored internally when processing the flow.
    • If three Input or Operator nodes are selected and a new Operator is created, the selected nodes will be connected to the First, Second and Third Inputs of the Operator.
      • If the O shortcut was used, the Operator will also be switched to "Blend" mode which is the default Three-Input mode.

Inserting an Operator Downstream

  • When an Operator is added and a node is automatically connected to its first Input socket (see above), if that node was already connected to a different node downstream, the Operator will be inserted into the connection, connecting to the same node downstream.
  • To disable this behavior, hold down the Shift key while pressing any of the Operator shortcut (O,+,-,*,/,B,C,N,M,S etc).

Creating an Input with Selected Downstream Nodes

  • When an Input node is created, the current node selection is checked and if there is exactly one Operator selected, the Input node will be connected to the FIRST FREE input socket of the Operator.
    • In this case, the selection will not be changed, so the Operator will remain selected, thus allowing for multiple Inputs to be connected one after the other to its input sockets.
    • If more than one Operator is selected, no connection will be performed.
    • The number of possible connections will depend on the Operator's mode - if only one input is available, only one connection will be performed. When set to "Blend" mode, up to three connections can be created.

Removing an Operator while Preserving Connections

  • When an Operator is deleted, its upstream and downstream connections will also be deleted.
  • The alternative Remove node operation (Backspace key) preserves the first input connection and the output connection by connecting the upstream and downstream nodes while deleting the Operator itself.

EXAMPLE

  1. Open the Editor
  2. Place the mouse at the location to create a new Input at and hit the I key - a new Channel Input will be created. It will be automatically connected to the Output node and will be selected.
  3. Move the mouse down a bit and hit the I key again - a second Channel Input will be created but not linked to anything. Both Input Nodes will be selected.
  4. Move the mouse to the side and hit the B key - a Blend operator will be inserted into the connection of the first Input node, connected to the Input node via its First Input socket and to the Output node with its Output socket. The second Input node will be connected to the Second Input socket of the Operator. The third socket (the Blend Value) will be red and unconnected. The Operator will be selected, the Input nodes deselected.
  5. With the Operator still selected, move the mouse beneath the second Input node and hit the F button to create a Float Value. Since the first and second input sockets of the Operator are already connected, the Float Value Input node will be connected automatically to the third socket of the Operator.

As you can see, we just created a fully connected flow to blend two Channels based on a Float Value without making a single connection manually.

Undo/Redo

  • The Krakatoa Channels Editor provides unlimited Undo and Redo steps within the current modifier's editing session.
  • The Undo/Redo buffers are implemented via files on disk, thus there is no memory limitation to the number of steps that can be recorded.
  • To Undo a step, press Ctrl+Z or left-click the Undo button in the lower right corner of the Editor's UI
  • To Redo a step, press Ctrl+Y or left-click the Redo button in the lower right corner of the Editor's UI
  • To Undo or Redo multiple steps at once, right-click the Undo or Redo button and select the undo level to revert to from the menu.
  • If you undo to a specific level and then perform any editing operation that creates an undo record including changing node selection, all Redo steps from this point on will be cleared making it impossible to redo again.
  • If you close the editor and open it again from the modifier, or switch to a different modifier, the undo stack will be cleared.

Copy And Paste

  • The Krakatoa Channels Editor provides its own Clipboard for copying one or more connected nodes inside a flow or between flows of different modifiers.
  • To Copy, select one or more nodes and press Ctrl+C or select Copy from the menus.
  • To Paste, place the mouse at the location to put the upper left corner of the copied selection at and press Ctrl+V or select Paste from the menus.
  • Existing connections between copied nodes will be preserved.
  • Connections to other nodes in the flow that were not part of the selection will not be preserved.
  • The relative position of the pasted nodes will reflect the original position when they were copied, shifted to the location of the mouse pointer.
  • The pasted nodes will be selected automatically.