Flow Advanced Particle FX
Friday, July 27, 2018 9:52 PMOverview
This describes the Flow - Advanced Particle FX tool for Creature. Flow is a node based procedural particle effects authoring system that allows the user to construct a wide variety of particle type effects to be used with your Character Animation. Take note that authoring particle effects is both CPU and Memory intensive, it is recommended you have a powerful multicore CPU as well as at least 16 GB of ram.
Concepts
Everything constructed in the Flow tool is comprised of Nodes and Connections.
Node
A node represents an entity in the Flow system. It can range anything from representing a type of fluid solver to a mathematical operation like adding 2 numbers.
Connection
You can connect Output Values of a Node into Input Values of another Node via a Connection. You can also connect up Nodes themselves into other Nodes via a Connection.
Below shows a typical Flow graph comprising of Nodes and Connections with each other:
Workflow
The general workflow of creating a Particle Effect involves:
-
Add a Solver. This determines how the Particles are simulated in the system
-
Add a Source. This is where you control how the Particles are spawned over the duration of the animation
-
Connect the Source to the Solver via the Source input on the Solver.
-
Setup the Source with an appropriate Mesh Region of your character.
-
Add a Region Pos node which allows you to pick a location on a character, pick the location using this node.
-
Connect the output positions of the Region Pos node to the input positiosn of the Source node.
-
Add a new Field node to add forces to your Particle simulation.
-
Connect the Field to the Fields input on the Solver.
-
Run the Particle Simulation!
We will go into setting up a simple particle sytem in-depth to take you through the process described above.
Simple Particle System Example
We are going to setup a simple particle system. This will showcase setting up a Particle simulation with a single Source spawining particles out from a location on the character mesh. It will be influenced by a single Gravity Field. First, startup the Flow system: Animate -> Motors/Swaps/Effects -> Flow - Advanced Particle FX:
-
Right-click and create a Regular Solver
-
Right-click and create a Gravity Field
-
Right-click and create a RadialSource
-
Right-click and create a RegionPos
Tip: Right-clicking will get you the Node Creation Menu, use this to create the nodes described in the steps above:
Now click + drag on the Red and Green slots to setup the connections like the diagram below:
Setup Mesh Region
First, let us assign a Mesh Region to the RadialSource node. This determines the layer/depth ordering of where the particle will be emitted from. So you can pick Mesh Region that is below another region for particles to be hidden behind regions on top of them.
Select the RadialSource node and click on the RegionIdx value. A dialog box will popup asking you to select a Mesh Region. Go back into the Animation window, switch to Regions and select your Mesh Region. Then go back to the Flow window and click to accept your selected Mesh Region:
Setup Spawn Position
You can now pick the position of where the particles should be spawned. If you do not use the RegionPos node, then particles can be spawned from a fixed position specified in the Position.X/Y/Z attributes of the RadialSource. In this example however, we will be spawning from some location of the actual mesh of the character. This enables us to spawn particles from some embedded location of the character as it moves allowing for much more interesting results. Select the RegionPos node and click on the EmbedTri attribute value. A dialog box will popup asking you to pick a location on your animated character. If you go back into the Animation window, you will see a Red Square. Clicking on anywhere on the character will move the square to that location. Once you are happy with the position, go back into the Flow window and accept your spawn position:
Pick Particle Sprite
Now you can pick the actual image you want to spawn for your particles. This can be either a single image or an animated sequence. In this simple example we will be picking a single image. Select RadialSource and click on SpriteImage:
Now a new window will pop up. This window allows you to manage/add/remove PNG images to be used as Sprite Images in your Particle Simulation:
Import a new PNG image for your particles, select it and accept. Take note these are the same images available to you during Sprite Swapping.
Run Particle Simulation
If you set everything up correctly, you are now ready to run your Particle Simulation! Simply click Run on the floating window in the Flow window and you should see the results in the Animation Window:
Learning more about Flow
Take note the above example is just a very simple example of what Flow is capable of. Flow allows for a wide variety of particle effects, including results like particle streams, high-end fluid dynamics motion and more. Please read up more on the various nodes of Flow and watch the video tutorials to learn about authoring fancier particle effects.