Phenix – Particle Animation Powerhouse for Blender
(Documentation work in progress: 2024-10-14)
Introduction:
Welcome to Phenix, an intuitive and powerful nodal particle system, built to maximize creativity while offering flexible control
over particle simulations. Developed in Rust for high performance, Phenix is designed for efficiency.
Here are some tutorials to discover the add-on (this does not replace reading the documentation, which is more
detailed): Youtube video
tutorials
Installation and Setup:
Navigate to Edit → Preferences → Add-ons → Install
Choose the Phenix.zip file.
Check the box labeled “Phenix” to enable the addon.
Restart Blender to complete the installation.
Known issue on Windows: To uninstall the add-on, you first need to disable it, then restart Blender, and then uninstall
it. Because of the way the OS handles dynamic libraries, it’s not possible to uninstall it while it’s enabled.
To access Phenix tools:
Press Shift + F3
Alternatively, click on the “Editor” tab and locate
“Phenix Particle” in the General section.
General settings of Phenix:
Show Objects Toggle on/off to display only the objects
utilized in the simulation.
Show Stage Enable to draw color on the node
header, indicating its execution stage.
Help Panel
Toggle on/off to reveal detailed information about the node.
Statistic Toggle on/off to view simulation statistics,
such as the number of emitters, particles, objects, etc., used in the
simulation.
Record Globally disable/enable the simulation.
General workflow
Setting up the layout window
Setting up the layout window like in this way it is much easier to create
particle animations.
Creating a Node Tree
Creating a Node Tree and adding nodes to that Particle Node Tree exactly like
in the way you do it in Shade Editor.
Exploring Phenix Stack Features
As you create Node Trees, they seamlessly integrate into the Phenix Stack,
offering a centralized hub for managing your particle animations. Here’s a
guide to exploring and leveraging the features within the Phenix Stack
Icon Functionality
Camera Icon:
The Camera Icon offers a convenient option to manage the visibility of the
selected node tree in the 3D Viewport.
Here’s how you can use it:
Left-clicking on the Camera Icon allows you to toggle the visibility of the
selected node tree within the 3D Viewport.
When activated, the animation becomes visible, providing a real-time preview
of its effects on your scene.
Edit a node tree:
Selecting a node tree (clic in the name) automatically switch to the graph.
Here’s a clear explanation:
Simply clicking on the name activates the edit mode for the chosen
node tree, allowing you to make adjustments, add or remove nodes, and refine your particle animation setup.
Ctrl + Click: Turns on the visibility of the animation for
the selected node tree, simultaneously turning off the visibility of the
animation for the previously active node tree.
Shift + Click: Turns on the visibility of the animation for the selected node tree, leaving the visibility of the animation unchanged for the previously active node tree.
This ensures that modifications are intentional, providing a safeguard
against unintended changes while navigating through node trees.
Cross Icon:
The Cross Icon offers a straightforward way to remove a node tree from the stack and will therefore not be evaluated.
NOTE: Any modifications made to the Node Trees or their individual nodes
take effect when you play the animation from the beginning. This ensures
that you observe the real-time impact of your modification in the 3D
Viewport.
Exploring Tree Tool Features
Uncover the capabilities of the Tree Tool in Phenix, a feature designed to
streamline node stage management for selected nodes. Utilize the Tree Tool to
conveniently set node stages for selected nodes, enhancing control over the
simulation process.
Note that not all nodes support stage assignment. For nodes with accessible
stage settings, pressing the ‘F’ key on your keyboard
triggers a pop-up menu, allowing you to designate the node stage.
Available Node Stages:
Understand the various node stages you can set:
Color
Name
Description
CONSTRUCTOR
Evaluated once at the beginning of the simulation.
CONSTRUCTOR_END
Evaluated once after Constructor.
FRAME_CONSTRUCTOR
Evaluated before updating each frame.
MODIFIER
Evaluated for every frame after Frame Constructor.
FRAME_END
Evaluated for every frame after Modifier.
FINISHED
Evaluated once at the end of the simulation.
NOTE: Each node has its default stage where it is best suited, so you don’t have to change it. Unless you are looking for specific behavior.
Exploring Node Snippet Features
Node Snippet in Phenix Particle is a powerful tool designed to simplify your
particle animation workflow. It functions like a preset, offering numerous
features to enhance your creative process.
Here’s how you can leverage the capabilities of Node Snippet:
Preset Node Groups:
Node Snippet contains various pre-arranged groups of nodes, serving as
presets. Choose the node group that aligns with your project requirements to
kickstart your animation effortlessly.
Create Custom Node Snippet:
Tailor Node Snippet to your needs by selecting specific nodes and creating
custom groups. This feature allows you to efficiently organize and reuse node
setups in future projects.
Export and Share:
Share your creative setups by exporting Node Snippet. This enables
collaboration and allows others to benefit from your unique configurations.
We chose the .json format to export the Node Snippet because it is widely used for storing and exchanging structured
data. It’s easy to share, for example by email, takes up little space, and is human-readable.
Import Node Snippet:
Likewise, enrich your library by importing Node Snippet shared by others.
Expand your toolkit and experiment with diverse node configurations.
Delete Unwanted Snippets:
Maintain a clutter-free workspace by deleting Node Snippets that are no longer
needed. This ensures a streamlined and organized Node Snippet library.
Node Snippet is your go-to resource for accelerating your particle animation
projects, offering flexibility, collaboration possibilities, and efficient
management of your creative assets in Phenix Particle.
Baking the Particle Animation
Before initiating the particle animation baking process in Phenix, ensure you
follow these steps for a smooth experience:
Save Your Blend File:
Begin by saving your Blender project file to secure your progress.
Un-Mute the Bake Particle System Node:
If the Bake Particle System Node is muted (if it is, the node will be greyed
out), unmute it by pressing the ‘M’ key on your keyboard.
This ensures the system is ready for baking.
Set Path in Bake Particle System Node:
Access the Bake Particle System Node and set the desired path for the
animation bake. This defines where the baked data will be stored.
Initiate Baking:
To commence the baking process, add a “Bake Particle System” node and toggle the “attributes” button to select the
properties to send to the geometry node. You then have the option to bake by clicking the “Bake” button on the node, or
to bake the entire stack using the operator under the Stack panel.
NOTE: The particles system preview node works the same way to accelerate the playback speed, with the difference that it
will write a cache in the machine’s temporary folder. This file will be deleted as soon as the particle system is baked.
Or if you use the remove (all) cache operator under the stack panel.
Final setting for Rendering the Animation
As you approach the final stages in Phenix, prepare for rendering by making a
small adjustment in the modifier. as illustrated in the GIF
Here’s the reasons you need to do this manually at the end:
Render Optimization in Cycles:
Phenix Particle is optimized for rendering billion-point clouds in the Cycles
render engine. Leverage this efficiency when working with extensive particle
setups.
Eevee Considerations:
Note that the optimized cycle setting may not be supported in Eevee. In such
cases, instances or alternative models can be used to achieve performance with
reduced computational demands.
Instance Replacement:
Consider replacing mesh instances with lightweight models, such as a fly model
for intricate patterns or a bird for boid FX simulations. This helps balance
performance and visual impact.
Integrating Rotation Nodes:
Introduce rotation nodes within the particle graph and bake rotation
attributes for instances. This enhances control over the orientation of the
instances, crucial for achieving specific visual effects.
By understanding these considerations and manually adjusting settings as
needed, you tailor Phenix Particle Animation to meet the specific demands of
your particle animation, rendering efficiently across different scenarios and
rendering engines.
Overview of Nodes of Phenix:
Phenix features distinct categories of nodes, acting as the building blocks
where creativity comes to life in animations. These categories are like
specialized tool sets, each unlocking unique capabilities for shaping and
refining your creation of animation. Let’s take a closer look at these
categories, breaking down the technical aspects into easily understandable
terms.
Particle System
This category of nodes allows you to create the particle system and setup the core.
Particle System
Particle System allows you to create a particle system
Inputs
Sub Frames: Aditional sub frames to simulate
Use Auto Sleep: Take into auto sleep consideration
FPS: Frames per second
Commands: Commands to apply to the particle system
Outputs
Bake: Bake the particle system using a bake node
Emitter Node
Emitter allows you to create a particle emitter object
Inputs
Type: Basic: Generates particles from a point in space Object: Generates particles from mesh vertices
Seed: Seed for randomization
Count: Number of particles to spawn
Start: Start frame of the emission
End: End frame of the emission
Initial Velocity: Initial velocity of the particles
Position: Position of the emitter
Group: Group to assign the particles
Spread: Add randomness to initial position
Object: Object to use as emitter
Use Normal: Use the normal of the mesh as initial velocity
Zone: Zone to use for spawning
Randomize: Randomize the particles position
Velocity Factor: Multiply the velocity of the particles by this value
Outputs
Output: Emitter command
Life cycle
Life cycle allows you to set the life cycle of the particles
Inputs
wake age: Wake age of the particles
dead age: Dead age of the particles
Auto sleep: Particles should sleep when they are not moving
velocity threshold: Threshold below which the particles should sleep
time threshold: Particles should sleep when they are not moving for this amount of time
Filter: Filter the particles to apply the life cycle to
Outputs
Output: Life cycle command
Garbage Collector
Garbage Collector allows you to remove particles from the simulation
Inputs
State: The state of the particles to collect
Filter: Filter the particles to collect
Outputs
Output: Garbage collector command
Bake Particle System
Bake Particle System allows you to bake the particle system to a cache file for faster playback
Inputs
Particle Attributes: Select the particle attributes to bake
Bake: Bake the particle system linked to this node
Bake Type: The type of the cache file
File Path: The path to the folder where the cache file will be saved
Outputs
Output: Enable attribute to bake from the node properties tab
Preview Particle System
Preview Particle System allows you to preview the point cloud from a particle system
Inputs
Fast Preview: Fast preview does not show particle radii
Attribute: The attribute type to preview
Percentage: Percentage of particles to preview
Outputs
Output: Show a preview in the viewport
Command
Command contain pre-built FX to use in your animation.
Attractor
Attractor Force that can be applied to particles
Inputs
Type: Attractor type: - Lorenz A sigma, B rho, C beta - Rossler A, B, C - Halvorsen A - Twisted Torus Rotor: A is main radius, B the small radius, C twist
Scale: Scale of the attractor
Max Speed: Maximum speed of the attractor
A: A value of the attractor
B: B value of the attractor
C: C value of the attractor
Weight: Weight of the attractor
Filter: Filter the particles to apply the attractor to
Outputs
Output: Attractor command
Drag
Drag allows you to add drag force to the particles
Inputs
Coefficient: Coefficient of the drag force, to slow down the particles
Filter: Filter the particles to apply the drag to
Outputs
Output: Drag command
Force
Force allows you to add force to the particles
Inputs
Value: Force vector
Filter: Filter the particles to apply the force to
Outputs
Output: Force command
Gravitational Force
Gravitation allows you to add force to the particles to attract them to a position
Inputs
Gravity: Force acting on the particles to attract them to position
Mass: Mass of the object that is attracting the particles
Position: Position of the object that is attracting the particles
Filter: Filter the particles to apply the gravity to
Outputs
Output: Gravity command
Vortex
Vortex allows you to create a vortex force
Inputs
Center: Center of the vortex
Direction: Orientation of the vortex
Speed: Speed of the vortex
Orbit: Orbit of the vortex, 0 = no orbit
Attraction: Attraction of the vortex
Repulsion: Repulsion of the vortex
Friction: Friction of the vortex
Filter: Filter the particles to apply the vortex to
Outputs
Output: Vortex command
Vorticity
Vorticity allows you to add vorticity force to the particles
Inputs
Smoothing: Smoothing radius for the vorticity calculation
Weight: Weight of the vorticity force
Filter: Filter the particles to apply the vorticity to
Outputs
Output: Vorticity command
Boid
Boid allows you to create crowd behaviors, flocking, cohesion, avoidance, goal seeking, and more
Inputs
Type: Use the (+/-) to add a behavior to the boid
Neighbor Threshold: The distance threshold for the boid to consider particles as neighbors
Separation Weight: The weight of the separation behavior
Alignment Weight: The weight of the alignment behavior
Cohesion Weight: The weight of the cohesion behavior
Cohesion Threshold: The distance threshold for the boid to consider particles as neighbors for the cohesion
Collision Avoidance Weight: The weight of the collision avoidance behavior
Collision Threshold: The distance threshold for the boid to consider particles as neighbors for the collision avoidance
Flock Weight: The weight of the flocking behavior
Leader ID: The ID of the boid to follow
Follow Lead Weight: The weight of the follow lead behavior
Goal Weight: The weight of the goal seeking behavior
Goal Max Force: Max force the boid can apply to reach the goal
Goal Max Speed: Max speed the boid can reach to reach the goal
Goal Position: The position of the goal
Filter: Filter particles to apply the boid behavior to
Outputs
Output: Boid command
Noise
Noise allows you to add noise to the particles attributes
Inputs
Noise Type: The type of noise to use: Perlin: Looks like static on a TV screen Cellular: Based on the concept of Voronoi cells Cubic: Good for creating smooth motion Curl: Good for creating natural-looking motion Turbulence: Good for creating swirling motion
Weight: The noise weight
Seed: The noise seed
Octaves: Number of levels of detail
Frequency: Size of the noise features
Scale: Size of the noise features
Gain: Relative strength of higher frequencies
Lacunarity: Gap between successive frequencies
Position: The noise position
Attribute: The particle attribute to apply the noise to
Filter: Filter the particles to apply the noise to
Outputs
Output: Noise command
Fluid (SPH)
Fluid allows you to add SPH fluid behavior to the particles
Inputs
Smoothing Radius: Radius within which a particle will interact with its neighbors
Gas Constant: A higher gas constant will result in stronger pressure forces among particles
Rest Density: Serves as a baseline for calculating pressure
Neighbours: More neighbors mean more calculations but a more accurate simulation
Epsilon: A small value to prevent division by zero in the pressure calculation
Filter: Filter the particles to apply the fluid effect to
Outputs
Output: Fluid command
Morph
Morph allows you to morph the particles from one object to another
Inputs
Morph Type: Color: Morph color taking the color of the objects FollowPath: Move the particles along vertices FollowTopology: Follow the topology of the objects Objects: Move particles from one object to another
Weight: The weight of the morph effect
Start: The start time of the morph (secondes).
Duration: The duration of the morph
Stay: How long should the particle stay when it reaches the target
Scop: Visibility of the vertices to the particle
Max Speed: The max speed of the morph
Loop over: Loop over the morph
Proportional Gain: The proportional gain of the morph
Braking Gain: The braking gain of the morph
Object: List of objects to morph to, alpha order
Filter: Filter the particles to morph
Outputs
Output: Morph command
Collider
Collider allows you to create a collider object using a shape or a mesh
Inputs
Shape: The collider shape Cube: a cube Sphere: a sphere Mesh: a mesh from the scene
Position: Collider position
Rotation: Collider rotation
Scale: Collider scale
Object: Object to use as collider shape Only used when shape is set to Mesh
Bounciness: Collider bounciness
Friction: Collider friction
Filter: Collider filter
Outputs
Output: Collider command
Ball Collision
Collision allows you to ennable collision for the particles
Inputs
Seed: Random seed
Bounciness: Bounciness of the particles
Friction: Friction of the particles
Correction: Percentage correction to apply
Tolerance: Tolerance of the overlap
Filter: Filter the particles to apply the collision to
Outputs
Output: Ball collision command
Division
Division allows you to divide the particles into more particles
Inputs
Seed: Seed for the random generator
Subset: Number of particles to create /!\ Make sure to have a strategy to keep the number of particles under control.
Group: Create a group for the new particles
Spread: Add randomness to the position of the new particles
Distribute: Divide properties such as mass, among the new particles
Filter: Filter the particles to divide
Outputs
Output: Division command
Fusion
Fusion allows you to merge the particles into one particle
Inputs
Seed: Seed for the random generator
Max count: Maximum number of particles to merge
Max distance: Maximum distance to detect the particles neighbors
Accumulate: Accumulate the properties of the particles
Filter: Filter the particles to merge
Outputs
Output: Fusion command
Constraint
Constraint allows you to create a constraint between particles and an point in space or an object
Inputs
Type: The constraint type Spring: Spring constraint Grab: Hanging from an point in space
Num Neighbors: Number of neighbors to constraint to
Max Distance: Max distance to constraint to
Weakness: Weakness of the constraint
Stiffness: Stiffness of the constraint
Damping: Damping, slows down the constraint
Map Weakness Attribute: Use a particle attribute as a weakness map
Object: Object to constraint to
Filter: Filter the particles to constraint to
Outputs
Output: Constraint command
Combustion
Combustion allows you to enable combustion for the particles
Inputs
Fuel Rate: Rate at which particles consume fuel. At 0.0 endlessly burning, at 1.0 particles burn out instantly
Heat Transfer: Ability to transfer heat
Combustion Radius: Radius within particles will be ignited
Cooling Rate: Rate at which particles cool down
Filter: Filter the particles to apply the combustion to
Outputs
Output: Combustion command
Group
Group allows you to flag particles for classification
Inputs
Flag: The flag to apply to the particles
Filter: Filter the particles to apply the drag to
Outputs
Output: Group command
Randomize Attribute
Randomize Attribute allows you to randomize the attribute of the particles
Inputs
Seed: Random seed
Min: Minimum value
Max: Maximum value
Attribute: Attribute to randomize
Filter: Filter the particles to apply the randomization to
Outputs
Output: Randomize attribute command
Rotation
Rotation allows you to rotate the particles
Inputs
Rotate: The rotation type
Seed: The seed for random rotation
Position: The target position for LookAt
Normal: Use a normal as rotation
Speed: The speed for Velocity and VelocityAngular rotation
Filter: Filter the particles to apply the rotation to
Outputs
Output: Rotation command. Enable Normals from the Bake Node property panel to output rotation
Setter
Setter allows you to set the attribute of the particles. Multiple attributes can be set at once by seperating them with a comma
Inputs
Value: Value to set
Attribute: List of attributes (comma seperated) to set
Filter: Filter the particles to apply the value to
Outputs
Output: Setter command
Trace
Trace allows you to generate a trace for the particles
Inputs
FPS: Frames per second
Sub Frames: Aditional sub frames to simulate
Link Density: Determine the number of points between two particles depending on the distance
Link Neighbors: Number of neighbors to link
Link Max Distance: Maximum distance to link
Group: Group to assign the particles
Use Auto Sleep: Take into auto sleep consideration
Keep properties: Keep properties of the particles, like velocity
Commands: Commands to apply to the particle system
Filter: Filter particles to trace
Outputs
Output: Output trace command
Procedure
This category allows you to talk directly to the Phoenix using a set of rules that define a custom command. You need to use the node 'Apply Procedure (proc)' to send the command to the program.
Apply Procedure (proc)
Apply Procedure allows you to apply operation to a particle attribute
Inputs
Proc: Procedure to apply
Filter: Filter the particles to apply the procedure to
Outputs
Command: Command to apply the procedure
Attribute Value (proc)
Attribute Value allows you to perform math operations on particle attributes
Inputs
Type: Get the value of the selected attribute
Outputs
Output: Value of the selected attribute
Clamp (proc)
Clamp allows you to clamp a particle attribute to a min and max value
Inputs
Value: Value to clamp
Min: Minimum value
Max: Maximum value
Outputs
Output: Clamped value
Math Curve (proc)
Math Curve allows you to create a curve to modify the value
Inputs
Value: The value to modify
Outputs
Output: The modified value
Image Sample (Proc)
Image Sample Node allows you to sample a color or alpha value from an image
Inputs
Image File: Path to the image file (.jpg, .png)
UV: UV coordinates for sampling the image
Interpolation Type: Type of interpolation to use
Output Type: Type of output (color or alpha)
Outputs
Output: Sampled color or alpha value
Interpolate (Proc)
Interpolate Node allows you to interpolate between two values based on a factor
Inputs
Source: Source value
Target: Target value
Factor: Interpolation factor (between 0 and 1)
Interpolation Type: Type of interpolation to use
Outputs
Output: Interpolated value
Math Ramp (proc)
Math Ramp allows you to create a ramp to modify the value
Inputs
Value: Value to sample on the gradient
Outputs
Output: Output color
Math (Proc)
Math Procedure allows you to perform math operations on a procedure
Inputs
Operation: Math operation to perform during the procedure
A: First value
B: Second value
Outputs
Output: Result of the operation as a procedure
Noise (Proc)
Noise Node generates noise values based on input position and noise parameters
Inputs
Position: Input position for noise generation.
Parameters: P arameters fields: - 'seed': The seed for randomizing the noise - 'octaves': The number of octaves - 'frequency': The base frequency - 'scale': The scaling factor for each axis - 'gain': The gain factor for the noise intensity - 'lacunarity': The lacunarity factor for gap filling
Noise Type: Type of noise to generate. Available options are: - Perlin: Classic Perlin noise. - Cellular: Cellular (Worley) noise. - Cubic: Cubic interpolated noise. - Turbulence: Turbulence noise using multiple octaves. - Curl: Curl noise for generating swirling patterns. - Musgrave: Musgrave noise for fractal-like patterns.
Outputs
Output: Generated noise value representing the noise intensity at the given position.
Object Attribute (proc)
Object Attribute allows you to target an object attribute
Inputs
Object: Object to get the attribute from
Outputs
Output: Value of the selected attribute
Map Range (proc)
Map Range allows you to map a particle attribute from one range to another
Inputs
Source Min: Source range minimum
Source Max: Source range maximum
Target Min: Target range minimum
Target Max: Target range maximum
Value: Value to map
Outputs
Output: Mapped value
Reorder Channels (Proc)
Reorder Channels allows you to reorder the components of a vector
Inputs
Drop down: Define the order of the channels
A: Input procedure
Outputs
Output: Reordered vector
Surface Vector (proc)
Computes a tangential vector to a surface
Inputs
Adhesion: How much the vector will stick to the surface
Vector: Vector to use on the surface (Try a Noise proc for example)
Object: Object to get the surface from
Outputs
Output: Vector flow on the surface
Random (proc)
Random allows you to generate a random value between a min and max value, to be used as a particle attribute
Inputs
Seed: Seed for the random generator
Min: Minimum value
Max: Maximum value
Outputs
Output: Random value
Sound Sample (Proc)
Sound Sample Node allows you to sample a value from a sound file (.wav, .mp3)
Inputs
Sample: Length of the sample to evaluate. Larger values will take longer to compute but will be more accurate.
Sound File: Path to the sound file (.wav)
Frequency: Frequency to sample
Time: Time in seconds to sample
Outputs
Output: Sampled value
Transform (proc)
Transform allows you to transform a particle attribute
Inputs
Value: Value to transform
Translate: Translation vector
Rotate: Rotation vector
Scale: Scale vector
Outputs
Output: Transformed value
Filter
These nodes allow you to filter the particles based on various criteria. They enable you to shape and enhance the aesthetics of your animations, bringing your creative vision into focus.
Filter
Filter allows you to filter particles based on their attributes
Inputs
Type: The type of comparison to perform: Equal: == Not Equal: != Less Than: < Greater Than: > Less Than or Equal: <= Greater Than or Equal: >= Modulus Zero: particle_attribute % threshold == 0 Sin: Cycle sin to the threshold value
Invert: Invert the filter
Threshold: Threshold is the value to compare against
Epsilon: Allow a tolerance for the comparison
Attribute: The attribute to filter on, one component at a time. To get the blue channel use ColorB
Zone: The zone to filter on
Outputs
Output: Filter result, can be combined using Combine Filters node for better tuning
Zone Filter
Zone allows you to target particles within a zone
Inputs
Position: The position of the zone
Rotation: The rotation of the zone
Scale: The scale of the zone
Falloff Radius: The radius of the falloff
Shape: The shape of the zone
Invert: Invert the zone to select particles outside of it
Outputs
Output: The zone to use as a filter or in conjunction with a Filter node
Combine Filter
Combine Filter allows you to combine multiple filters into one filter
Inputs
Filters: Filters to combine
Outputs
Combined Filter: Combined filters
Input
Input nodes allow you to seamlessly incorporate user inputs, making your animations respond to external actions.
Image
Image Node allows you to select an image from bpy.data and send its data to Phenix
Inputs
Image: The selected image
Outputs
Image: The selected image from bpy.data
Object Info
Object Info allows you to get information about an object in the scene
Inputs
Object: The object to get information from
Outputs
Position: The position of the object
Rotation: The rotation of the object
Scale: The scale of the object
Object: The object
Vertex Count: The number of vertices of the object
Particle Attribute
Particle Attribute, use this node to target the particle attribute
Inputs
Type: The attribute type
Outputs
Output: Name of the selected attribute
Scene Info
Scene Info allows you to get the scene info
Inputs
Data: Blender's scene info
Outputs
FPS: Blender's scene frame rate
Gravity: Gravity of the scene
Frame Start: Start frame of the scene
Frame End: End frame of the scene
Frame Current: Current frame
Frame Current
Frame Current allows you to get the current frame
Inputs
Data: Current frame
Outputs
Value: Current frame
String
String allows you to input a string value
Inputs
Value: String value
Outputs
Value: String value
Utils
Utils are like the handy tools in your animation toolbox.
Combine Command
Combine Command allows you to combine multiple commands into one command
Inputs
Commands: Commands to combine
Outputs
Output: Combined commands
Combine Filter
Combine Filter allows you to combine multiple filters into one filter
Inputs
Filters: Filters to combine
Outputs
Combined Filter: Combined filters
Combine Object
Combine Object allows you to combine multiple objects in order to be processed by other nodes at once
Inputs
Object: Objects to combine
Outputs
Object: Combined objects
Combine String
Combine String allows you to combine multiple strings like particle attributes into one string
Inputs
Strings: Strings to combine
Outputs
Combined String: The strings is concatenated with a comma separator
Preview Mesh
Preview Object Mesh allows you to preview the point cloud from an object
Inputs
Object: The object to preview
Attribute: The attribute to preview from the object
Percentage: The percentage of points to show
Radius: The radius of the points
Fast Preview: Does not show radii, but it is much faster to render.
Outputs
Output: Allows you to preview the point cloud from an object
Preview Particle System
Preview Particle System allows you to preview the point cloud from a particle system
Inputs
Fast Preview: Fast preview does not show particle radii
Attribute: The attribute type to preview
Percentage: Percentage of particles to preview
Outputs
Output: Show a preview in the viewport
Math
Math nodes bring precision to your animations. They allow you to use mathematical operations to control various aspects.
Bool
Bool allows you to input a boolean value
Inputs
Value: Bool value
Outputs
Value: Bool value
Float
Float allows you to input a float value
Inputs
Value: Float value
Outputs
Value: Float value
Float Input
Float Input allows you to input a float value
Inputs
Value: Float value
Outputs
Value: Float value
Int
Int allows you to input a integer value
Inputs
Value: Int value
Outputs
Value: Int value
Math
Math operations
Inputs
Operation: Math operation to perform
A: First value
B: Second value
Outputs
Value: Result of the operation
Vector
Vector node allows you to input a float vector value
Inputs
Value: Vector value
Outputs
Value: Vector value
Vector to XYZ
Vector to XYZ, split a vector into 3 floats
Inputs
Vector: Vector to split
Outputs
X: X value
Y: Y value
Z: Z value
XYZ to Vector
XYZ to Vector, combine 3 floats into a vector
Inputs
X: X value
Y: Y value
Z: Z value
Outputs
Vector: Newly created vector
Import / Export
Bridge the gap between Phenix and external assets. The Import/Export nodes facilitate seamless integration, allowing you to import and export data effortlessly, enriching your animations with external elements.
Bake Particle System
Bake Particle System allows you to bake the particle system to a cache file for faster playback
Inputs
Particle Attributes: Select the particle attributes to bake
Bake: Bake the particle system linked to this node
Bake Type: The type of the cache file
File Path: The path to the folder where the cache file will be saved
Outputs
Output: Enable attribute to bake from the node properties tab
Import Object
Import Object allows you to import an object from a file
Inputs
File Path: The file path to import
Position: Set the object position in the scene
Rotation: Set the object rotation in the scene
Scale: Set the object scale in the scene
Outputs
Object: The imported object
Load Image
Load Image allows you to load an image file in JPG or PNG format
Inputs
File Path: File path to load .jpg or .png image
Outputs
Image: The loaded image
Load Audio
Load Audio allows you to load an audio file in (.mp3, .wav) format.
Inputs
File Path: File path to load audio, must be .mp3 or .wav.
Outputs
Audio: The loaded audio
Layout
Layout nodes help you organize your animations effectively.