Blender nodes for Taichi elements¶
Contents
Node System¶
To create a taichi-elements simulation, you need to open the Elements window. Next, you need to create a new tree and add the necessary nodes. Addon requires many nodes for simulation. The main node is the Simulation node. This node store the Simulate button. Using this button, you can start the simulation. Examples of node trees can be downloaded from here: https://github.com/taichi-dev/taichi_elements_blender_examples
Node Sockets¶
Taichi Elements has the following sockets:
Integer - represents a single integer value. Color - gray.
Float - represents a single float value. Color - gray.
Vector - represents a single 3d vector value. Color - gray.
Struct - structure that stores settings. Color - green.
Add - dynamic socket, which is needed to create new inputs. Color - black.
Folder - socket stores the path to the folder. Color - orange.
Color - stores color values in RGB format. Color - yellow.
Nodes¶
MPM Solver¶
Tip
Location: Add > Solvers > MPM Solver
Description¶
This node tells the simulation to use the MPM method (currently the Material Point Method is the only available simulation method). This node stores the settings of the MPM solver.
Parameters¶
It has no parameters.
Inputs¶
Domain Object - this socket is temporarily not working.
Resolution - domain resolution in voxels. The simulation will use a cubic domain. For example, if the Resolution value is 64, then the domain resolution will be 64 x 64 x 64.
Size - domain size in meters. The domain is created in such a way that its left, back, bottom corner (in the direction -X, -Y, -Z) is at coordinates 0, 0, 0. And if Size is 10.0, then the right, front, top corner will have a coordinate 10, 10, 10.
Outputs¶
Solver Settings - it is a socket, which is a set of MPM solver parameters.
Material¶
Tip
Location: Add > Solvers > Material
Description¶
This node stores information about the properties of the material. Using this node, you can specify what physical characteristics the emitter particles will have. Be it the material of water, snow, sand, etc.
Parameters¶
Material Type - This parameter specifies what the material will be for Emitters. The following options are available: water, sand, snow, elastic.
Inputs¶
It has no inputs.
Outputs¶
Material Settings - This output is material settings. At the moment, from the settings there is only the type of material.
Integer¶
Tip
Location: Add > Inputs > Integer
Description¶
This is a simple input node that provides an integer value.
Parameters¶
It has no parameters.
Inputs¶
It has no inputs.
Outputs¶
Integer Value - an integer value that can be connected to any other integer socket.
Float¶
Tip
Location: Add > Inputs > Float
Description¶
This node represents a floating point number.
Parameters¶
It has no parameters.
Inputs¶
It has no inputs.
Outputs¶
Float Value - this socket provides a floating point number that can be connected to any float socket.
Folder¶
Tip
Location: Add > Inputs > Folder
Description¶
Using this node, you can specify the folder.
Parameters¶
It has no parameters.
Inputs¶
It has no inputs.
Outputs¶
String Value - this output is a string that indicates the folder.
Emitter¶
Tip
Location: Add > Simulation Objects > Emitter
Description¶
Using this node, you can add an emitter to the simulation. Emitter is a mesh object that emits particles from its volume once.
Parameters¶
It has no parameters.
Inputs¶
Emit Frame - indicates the frame number in the timeline in which particles will be emitted.
Source Geometry - indicates a mesh object that will emit particles from its volume.
Material - this socket accepts material parameters (water, snow, sand, elastic).
Color - particle color.
Outputs¶
Emitter - this socket is a structure that stores the settings of the emitter.
Inflow¶
Tip
Location: Add > Simulation Objects > Inflow
Description¶
This type of object emits particles like a faucet. An Inflow object can continuously emit particles, and can also stop the emission of particles, and then continue to emit particles.
Parameters¶
It has no parameters.
Inputs¶
Enable FCurve - This socket accepts an input animation curve that will indicate the enable value for the inflow object. If you want particles to be emitted throughout the simulation, you can omit the animation curve, but the socket must be connected to the FCurve node. But if you need to turn on and off the inflow object during the simulation, you need to specify the animation curve in the FCurve node. At a value of 0.0, inflow will not emit particles, and at a value of 1.0, continuous emission of particles will occur.
Source Geometry - indicates a mesh object that will emit particles from its volume.
Material - this socket accepts material parameters (water, snow, sand, elastic).
Color - particle color.
Outputs¶
Inflow - this socket is a structure that stores the settings of the inflow object.
Simulation¶
Tip
Location: Add > Simulation Objects > Simulation
Description¶
This node is a simulation in general. The simulation is launched using the Simulate operator of this node.
Parameters¶
It has no parameters.
Inputs¶
Frame Start - frame on the timeline from which the simulation begins. If you plan to create a particle system from the simulation cache, it is better to set this value to 2, since 0 and 1 frames cannot be displayed correctly (this is a limitation of the blender particle system).
Frame End - frame number on the timeline in which the simulation ends.
FPS - simulation frame rate.
Solver - this socket accepts solver settings as input. At the moment, only MPM Solver can be connected.
Hubs - This socket accepts a hub or a list of hubs as an input. The hub node is described below.
Outputs¶
Particles - this output represents particle simulation data.
Hub¶
Tip
Location: Add > Simulation Objects > Hub
Description¶
This node is the connecting link between emitters and force fields. At the moment, only one force field is supported in the simulation. In the future, the use of different force fields for individual emitters is possible.
Parameters¶
It has no parameters.
Inputs¶
Forces - input for force fields. At the moment, it is possible to connect only one force field. In the future, the capabilities of the simulator and this node will expand, so that it is possible to connect several force fields.
Emitters - socket to connect emitter or emitter list. Those emitters that are not connected to any hub object will not participate in the simulation.
Outputs¶
Hub Data - these are the settings of the hub object.
Source Object¶
Tip
Location: Add > Source Data > Source Object
Description¶
Allows you to select and use an mesh object from the scene in the simulation.
Parameters¶
Object - the name of the object to use.
Inputs¶
It has no inputs.
Outputs¶
Source Geometry - geometric data from the mesh of the object.
FCurve¶
Tip
Location: Add > Source Data > FCurve
Description¶
Animation curve. You can use it to specify animation for the Enable parameter of the Inflow object. To do this, create a Custom Property on any scene object and animate this custom property. Next, you can specify an animation curve using this node.
Parameters¶
Action - name action from the blend file.
FCurve Index - index of the animation curve. If this index is specified correctly, the name of the animation curve will be displayed below.
Inputs¶
It has no inputs.
Outputs¶
FCurve Values - animation curve values.
Texture¶
Tip
Location: Add > Source Data > Texture
Description¶
Allows you to select a texture from a blend file. At the moment, this node cannot be used anywhere. In the future, it is planned to expand the capabilities of the simulator and it will be possible to use this node.
Parameters¶
Texture - the name of the texture to use.
Inputs¶
It has no inputs.
Outputs¶
Texture - an object that represents data and texture parameters.
Disk Cache¶
Tip
Location: Add > Output > Disk Cache
Description¶
This node saves the simulation to disk.
Parameters¶
Particle System - import particles from the cache and create a particle system based on them.
Particle Mesh - import particles from the cache and create a mesh based on them. The created mesh will only have vertices.
Inputs¶
Particles - this input receives a list of particles from the Simulation node.
Folder - path to save and import cache.
Outputs¶
It has no outputs.
Gravity¶
Tip
Location: Add > Force Fields > Gravity
Description¶
Gravitational force field.
Parameters¶
It has no parameters.
Outputs¶
Gravity Force - structure that represents gravity settings.
Make List¶
Tip
Location: Add > Struct > Make List
Description¶
Combines several structures (nodes) into one list.
Parameters¶
It has no parameters.
Outputs¶
Elements - list of input structures.
Merge¶
Tip
Location: Add > Struct > Merge
Description¶
Combines lists of structures that are formed using the Make List node.
Parameters¶
It has no parameters.
Outputs¶
Elements - merged lists items.
Frame¶
Tip
Location: Add > Layout > Frame
Description¶
Standard frame blender node.
Parameters¶
It has no parameters.
Inputs¶
It has no inputs.
Outputs¶
It has no outputs.