Previous Topic (None) Up (Particle Channels Editor) Next Topic (Particle Channels Editor Node Colors)

MagmaFlow Editor Node Types

 Available in Krakatoa v1.5.0 and higher

Overview

  • All nodes in the Krakatoa Channels Editor have no more than one output, which means the flow has a tree structure with the Output node as the root.
  • Cyclic flows are checked for automatically and disallowed by both the Editor and the Compiler.
  • The MagmaFlow Editor currently provides the following node types - click on the titles to learn more:

Output Node...

  • This topic discusses the various properties and user interface controls of the MagmaFlow Output Node.
  • In short,
    • A MagmaFlow always has exactly one Output Node which defines the Particle Data Channel to write to.
    • The Output Node cannot be deleted or moved.

Input Nodes...

  • This topic discusses the various types of Input Nodes and their use in MagmaFlow.
  • In short,
    • A MagmaFlow must have at least one Input Node which is connected either directly to the Output Node, or to an Operator.
    • MagmaFlow currently supports Channel, Vector, Float, Integer, Script, TextureMap input nodes
    • Some special nodes are also considered Input Nodes, like the BlackOp Input Socket which is available only when editing Compound Operators, and the Notes node which has no output.

Operator Nodes...

  • Operator Nodes have both one or more Input sockets and exactly one Output socket and perform operations on the input values to produce an output value.
  • The Operator Nodes are the largest group of nodes in MagmaFlow and are divided into multiple categories based on the Input they operate on or on the operation they perform, e.g. Arithmetic, Functions, Vector, Conversion, Logic etc.

BlackOp Compound Nodes...

  • The BlackOps are Compound Operators created by connecting multiple Input and Operator nodes into a sub-tree performing a specific operation that can be saved to disk for later use.
  • A BlackOp is represented by a single node which can provide zero or more inputs and always has one output.
  • A BlackOp is a User-Interface-level construct - when the flow is compiled for execution, the nested sub-flows of BlackOps are expanded and the flow that gets executed at render time contains only basic nodes.
  • Once created, the BlackOp has no dynamic connection to any on-disk definitions and is self-contained, although it is possible to update an existing BlackOp from a disk definition manually, or modify and resave a BlackOp to disk.
    • Once inserted into a flow, changes can be made to the BlackOp sub-flow without affecting other BlackOps using the same definition.