-
Notifications
You must be signed in to change notification settings - Fork 1
The nodes
NOTE: If you have doubts while working you can just make a double left-click on the node and all his information will be displayed. To see information about his properties just hover it and a panel with a description will be showed.
This class covers all the 'basic' operations like define numbers, vectors, load textures...
This node allows you to create a constant number.
Properties
| Name | Type | Description |
|---|---|---|
| number | Float | The value of the number. |
Outputs
| Name | Type | Description |
|---|---|---|
| Number | Float | The value of the number. |
Widgets
| Name | Description |
|---|---|
| Number | Use this widget will modify the number property. |
This node allows you to create a random number. The random number will be changed every frame.
Inputs
| Name | Type | Description |
|---|---|---|
| Min Value | Float | The minimum value of the number. |
| Max Value | Float | The maximum value of the number. |
Properties
| Name | Type | Description |
|---|---|---|
| min | Float | The minimum value of the number. |
| max | Float | The maximum value of the number. |
Outputs
| Name | Type | Description |
|---|---|---|
| Number | Float | The value of the random number. |
This node allows you to load a default texture for the particles of a system or load a custom one from local in that case, you will have to save it because the next time you load the graph, you will need it. Instead of loading a normal texture, atlas and animated textures are supported.
Properties
| Name | Type | Description |
|---|---|---|
| default_texture | String | If a default texture is loaded, then his name will be saved here. |
| subtextures | Bool | If true then the loaded texture is an atlas of textures. |
| textures_x | Integer | The number of textures in the x coordinate of the atlas. |
| textures_y | Integer | The number of textures in the y coordinate of the atlas. |
| animated | Bool | If true then the texture is an animated texture. |
| anim_loop | Bool | If true, this option creates a loop of the animation. |
| anim_duration | Integer | If anim_loop is true, this number will set the duration of the animation. |
Outputs
| Name | Type | Description |
|---|---|---|
| Texture | Texture | The texture object. |
Widgets
| Name | Description |
|---|---|
| Select texture | On click this button a modal will be displayed to select the texture. |
| Sub textures | This widget will modify the subtextures property. |
| Textures in x | This widget will modify the textures_x property. |
| Textures in y | This widget will modify the textures_y property. |
| Animated texture | This widget will modify the animated property. |
| Animation loop | This widget will modify the anim_loop property. |
| Animation time | This widget will modify the anim_duration property. |
This node allows you to load a default mesh or load from the internet using an URL. In that case, you will have to save it because the next time you load the graph, you will need it.
Inputs
| Name | Type | Description |
|---|---|---|
| Position | Vector3 | The position of the mesh. |
| Scale | Vector3 | The scale in the components xyz of the mesh. |
| Rotation | Vector3 | The rotation, in degrees, in the components xyz of the mesh. |
| Color | Color | The color of the mesh. |
Properties
| Name | Type | Description |
|---|---|---|
| name | String | If a default mesh is loaded, then his name will be saved here. |
| position | Vector3 | The position of the mesh. |
| scale | Vector3 | The scale in the components xyz of the mesh. |
| rotation | Vector3 | The rotation, in degrees, in the components xyz of the mesh. |
| color | Color | The color of the mesh. |
| visibility | Bool | If true the mesh will be visible. |
Outputs
| Name | Type | Description |
|---|---|---|
| Mesh | Mesh | The mesh object. |
Widgets
| Name | Description |
|---|---|
| Select mesh | On click this button a modal will be displayed to select the mesh. |
| Show mesh | This widget will modify the visibility property. |
This node allows you to create an equation adding points when you click on the black canvas and move them by dragging it. The equation can be used for the modify property node instead of the linear one. A point on the top equals the value to achieve and, on the bottom, the original one.
Properties
| Name | Type | Description |
|---|---|---|
| curve_points | Array of arrays of length 2 | The points of the equation. |
Outputs
| Name | Type | Description |
|---|---|---|
| Equation | Equation | The equation object. |
This node allows you to create a vector of three components.
Inputs
| Name | Type | Description |
|---|---|---|
| X | Float | The value of the x component. |
| Y | Float | The value of the y component. |
| Z | Float | The value of the z component. |
Properties
| Name | Type | Description |
|---|---|---|
| x | Float | The value of the x component. |
| y | Float | The value of the y component. |
| z | Float | The value of the z component. |
Outputs
| Name | Type | Description |
|---|---|---|
| Vec3 | Vector3 | The Vector3 filled. |
This node allows you to create an RGBA color.
Properties
| Name | Type | Description |
|---|---|---|
| color | Color | The RGBA components of the color. |
Outputs
| Name | Type | Description |
|---|---|---|
| Color | Color | The color object. |
Widgets
| Name | Description |
|---|---|
| Red | This widget will modify the red component of the color. |
| Green | This widget will modify the green component of the color. |
| Blue | This widget will modify the blue component of the color. |
| Alpha | This widget will modify the alpha component of the color. |
This class manage the nodes for spawn particles.
This node allows defining some default values for the particle system.
Properties
| Name | Type | Description |
|---|---|---|
| Max particles | Integer | Maximum number of particles allowed. |
| Spawn rate | Integer | How many particles are spawned every frame or time between waves. |
| Particles per wave | Integer | How many particles are spawned per wave. |
| Color | Color | The color of the emitter. |
| Position | Vector3 | The origin of the particles in point mode. |
Properties
| Name | Type | Description |
|---|---|---|
| max_particles | Integer | Maximum number of particles allowed. |
| spawn_rate | Integer | How many particles are spawned every frame or time between waves. |
| particles_per_wave | Integer | How many particles are spawned per wave. |
| origin | String | The origin of the particles. Can be a point or a mesh. |
| position | Vector3 | The origin of the particles in point mode. |
| color | Color | The color of the emitter. |
| show_origin | Bool | Enable/Disable showing the origin of the particles. |
| src_bfact | String | Source blending factor. |
| dst_bfact | String | Destination blending factor. |
| spawn_mode | String | The spawn mode of the system. Can be waves or linear. |
Outputs
| Name | Type | Description |
|---|---|---|
| Emitter | Emitter | The emitter object. |
Widgets
| Name | Description |
|---|---|
| Show origin | This widget will modify the show_origin property. |
| Spawn Mode | This widget will modify the spawn_mode property. |
| Source blending factor | This widget will modify the src_bfact property. |
| Destination blending factor | This widget will modify the dst_bfact property. |
| Origin | This widget will modify the origin property. |
This node allows defining a customizable sub emitter given a system and a condition. The particles will spawn when the condition is meted, by default is when a particle dies.
Inputs
| Name | Type | Description |
|---|---|---|
| Particle system | ParticleSystem | The particle system parent of the sub emitter. |
| Max particles | Integer | Maximum number of particles allowed. |
| Particles per wave | Integer | How many particles are spawned per wave. |
| Condition | Condition | Condition when the particles will start to be spawned. |
Properties
| Name | Type | Description |
|---|---|---|
| max_particles | Integer | Maximum number of particles allowed. |
| particles_per_wave | Integer | How many particles are spawned per wave. |
Outputs
| Name | Type | Description |
|---|---|---|
| Emitter | Emitter | The emitter object. |
This class covers all the nodes for set the initial values to the particles.
This node allows defining the values of the particles and assigns a texture to them.
Inputs
| Name | Type | Description |
|---|---|---|
| Max speed | Vector3 | The maximum speed of the particle. |
| Min speed | Vector3 | The minimum speed of the particle. |
| Max life time | Integer | The maximum lifetime of the particle in seconds. |
| Min life time | Integer | The minimum lifetime of the particle in seconds. |
| Max size | Float | The maximum size of the particle. |
| Min size | Float | The minimum size of the particle. |
| Color | Color | The color of the particle. |
| Texture | Texture | The texture of the particle. |
Properties
| Name | Type | Description |
|---|---|---|
| max_speed | Vector3 | The maximum speed of the particle. |
| min_speed | Vector3 | The minimum speed of the particle. |
| max_size | Float | The maximum size of the particle. |
| min_size | Float | The minimum size of the particle. |
| max_life_time | Integer | The maximum lifetime of the particle in seconds. |
| min_life_time | Integer | The minimum lifetime of the particle in seconds. |
| color | Color | The color of the particle. |
Outputs
| Name | Type | Description |
|---|---|---|
| Particle data | ParticleData | The particle data object. |
Inside this class, they are all the implemented external forces that can be applied to the system.
This node creates a global force that affects all the particles of a given system. It will only affect a sub emitter if the connection comes from a init node that initializes his particles.
Gravity showcase.
Inputs
| Name | Type | Description |
|---|---|---|
| Particle system | ParticleSystem | The particle system in which particles will be affected by the gravity. |
| Condition | Condition | The condition of when the particles will be affected by the gravity. |
| Direction | Vector3 | The direction in which the particles will be moved. |
| Strength | Float | The strength that will displace the particles. |
Properties
| Name | Type | Description |
|---|---|---|
| direction | Vector3 | The direction in which the particles will be moved. |
| strength | Float | The strength that will displace the particles. |
Outputs
| Name | Type | Description |
|---|---|---|
| Particle system | ParticleSystem | The particle system object. |
This node creates a circular force that affects the particles of a given system depends on how far they are from the origin of the vortex. It will only affect a sub emitter if the connection comes from a init node that initializes his particles.
Vortex showcase.
Inputs
| Name | Type | Description |
|---|---|---|
| Particle system | ParticleSystem | The particle system in which particles will be affected by the gravity. |
| Condition | Condition | The condition of when the particles will be affected by the vortex. |
| Position | Vector3 | The origin of the vortex. |
| Angular speed | Vector3 | The rotative strength that will displace the particles. |
| Scale | Float | The vortex area of effect. |
| Color | Color | The color of the vortex origin. |
Properties
| Name | Type | Description |
|---|---|---|
| position | Vector3 | The origin of the vortex. |
| angular_speed | Vector3 | The rotative strength that will displace the particles. |
| scale | Float | The vortex area of effect. |
| color | Color | The color of the vortex origin. |
Outputs
| Name | Type | Description |
|---|---|---|
| Particle system | ParticleSystem | The particle system object. |
Widgets
| Name | Description |
|---|---|
| Show vortex | This widget will enable/disable the visibility of the vortex. |
This node defines a point that creates a force repelling or attracting the particles of a given system depends on how far they are from their origin. It will only affect a sub emitter if the connection comes from a init node that initializes its particles.
Magnet point showcase.
Inputs
| Name | Type | Description |
|---|---|---|
| Particle system | ParticleSystem | The particle system in which particles will be affected by the magnet point. |
| Condition | Condition | The condition when the particles will be affected by the magnet point. |
| Position | Vector3 | The origin of the magnet point. |
| Strength | Float | The strength that will displace the particles. If is positive will attract and negative repel. |
| Scale | Float | The magnet point area of effect. |
| Color | Color | The color of the magnet point. |
Properties
| Name | Type | Description |
|---|---|---|
| position | Vector3 | The origin of the magnet point. |
| strength | Float | The strength that will displace the particles. If is positive will repel and negative attract. |
| scale | Float | The magnet point area of effect. |
| color | Color | The color of the magnet point origin. |
Outputs
| Name | Type | Description |
|---|---|---|
| Particle system | ParticleSystem | The particle system object. |
Widgets
| Name | Description |
|---|---|
| Show magnet point | This widget will enable/disable the visibility of the magnet point. |
This class have nodes for manage the conditions.
This node defines a condition and checks for every particle in the system if it's meted. It will only check for sub emitter particles if the connection comes from a init node that initializes his particles.
Inputs
| Name | Type | Description |
|---|---|---|
| Particle system | ParticleSystem | The particle system in which the condition will be tested. |
| Speed | Vector3 | The value we want to use for the check. |
| Life time | Float | The value we want to use for the check. |
| Size | Float | The value we want to use for the check. |
Speed, Life time and Size will never be present simultaneously, it will depend on the selected property to test the condition.
Properties
| Name | Type | Description |
|---|---|---|
| system_property | String | The tested property of the particle. |
| condition | String | What kind of operator will be used for the check. |
| is_one_time | Bool | If only can be meted one time per particle. |
| value | Variable:question: | The color of the vortex origin. |
❓ Is variable because will depend on the selected system_property.
Outputs
| Name | Type | Description |
|---|---|---|
| Condition | Condition | The condition object. |
Widgets
| Name | Description |
|---|---|
| Property | This widget will modify the system_property property. |
| Condition | This widget will modify the condition property. |
| One time condition | This widget will modify the is_one_time property. |
This node allows merging two conditions and checks what particles met the new condition.
Inputs
| Name | Type | Description |
|---|---|---|
| Condition 1 | Condition | The first condition to be merged. |
| Condition 2 | Condition | The second condition to be merged. |
Properties
| Name | Type | Description |
|---|---|---|
| merge_mode | String | What kind of merge will be used, the possible values are And or Or. |
Outputs
| Name | Type | Description |
|---|---|---|
| Condition | Condition | The condition object. |
Widgets
| Name | Description |
|---|---|
| Merge mode | This widget will modify the merge_mode property. |
This class cover all the properties modifications.
This node allows modifying one property of the particles given a condition and an equation. By default, the condition is true for all the particles, and the equation is linear. It will only modify properties for sub emitter particles if the connection comes from a init node that initializes his particles.
Inputs
| Name | Type | Description |
|---|---|---|
| Particle system | ParticleSystem | The particle system in which particles will be affected by the modification. |
| Condition | Condition | The condition of when the particles will be affected by the modification. |
| Change equation | Equation | The equation that represents the particles changes along the time |
| New speed | Vector3 | The new value of the property. |
| New size | Float | The new value of the property. |
| New color | Color | The new value of the property. |
| New life time | Integer | The new value of the property. |
New speed, New size, New color and New life time will never be present simultaneously, it will depend on the selected property to apply the modification.
Properties
| Name | Type | Description |
|---|---|---|
| changed_properties | String | What property will be changed. |
| application_mode | String | What operation will be done with the new value. |
| modification_mode | String | If the property will change along the particle lifetime or depending on a time defined manually. |
| user_defined_seconds | Float | How many seconds until achieving the new value. |
| user_defined_start | Float | How many seconds until start to make the changes. |
| new_value | Variable:question: | The new value of the property. |
❓ Is variable because will depend on the selected changed_properties.
Outputs
| Name | Type | Description |
|---|---|---|
| Particle system | ParticleSystem | The particle system object. |
Widgets
| Name | Description |
|---|---|
| Property | This widget will modify the changed_properties property. |
| Application Mode | This widget will modify the application_mode property. |
| Modification Mode | This widget will modify the modification_mode property. |
| Starts at | This widget will modify the user_defined_start property. |
| Duration | This widget will modify the user_defined_seconds property. |