On this page |
The plug-in supports both inputting and outputting particle.
Input ¶
Maya particles are inputted into Houdini assets as points. Both Maya particle and nParticle
nodes can be used for inputting. When inputting Maya particles, all of the custom Maya per-particle attributes are input as well. Since Maya only supports double and vector per-particle attributes, the input point attributes can only be float
and float3
point attributes.
Output ¶
Points from a Houdini asset are output as an nParticle
node. When points are output, the plug-in will output all Houdini point attributes as Maya per-particle attributes. Since Maya only supports float and vector per-particle attributes, float
and float3
point attributes are output into Maya particles. Since Maya particles does not support integer per-particle attributes, int
point attributes would be converted and outputted as float
attributes. Any other attributes, such as string attributes, are ignored.
Mapped Attributes ¶
Some standard per-particle attributes in Maya have different names in Houdini. These attributes are automatically mapped to the equivalent point attributes in Houdini.
Maya |
Houdini |
---|---|
position (vector) |
P (float3) |
velocity (vector) |
v (float3) |
acceleration (vector) |
force (float3) |
rgbPP (vector) |
Cd (float3) |
opacityPP (double) |
Alpha (float) |
radiusPP (double) |
pscale (float) |
finalLifespanPP (double) |
life (float) |
particleId (double) |
id (float) |
Note
While age is explicitly represented in Houdini, in Maya it is computed from birthTime and the current frame. If an asset has explicitly defined a birthTime attribute, we use for output, otherwise we compute birthTime from age.
Nucleus Solver ¶
When the asset creates an nParticle
node for outputting points/particles, the nParticle
node is assigned to the active Nucleus solver. This means that the output particles would then participate in any simulations that are assigned to the same Nucleus solver. This may or may not be the desired result.
One example is a Houdini asset that takes some input points, removes some points, and outputs the resulting points. If a simulated nParticle
is used as the input, the output nParticle
will be assigned to the same Nucleus Solver as the input nParticle
. Since the output particles have the exact same positions as the input particles, this input particles would collide with the output particles, which affects the motion of the input particles. In this case, to prevent the collisions, one of the nParticle
nodes should be assigned to a different Nucleus solver.
Start Frame ¶
In order to create the output nParticle node, the Houdini asset needs to be synced at (or after) the Houdini particle’s start frame. If you have loaded your asset before the start frame, you will not initally see any output particles until you have set the time to the start frame and resynced.
The output nParticle’s start frame needs to be set at (or before) the Houdini particle’s start frame in order to display the particles. If your start frame is before the default Nucleus start frame, you should set the start frame on the Nucleus node to match. If this would conflict with other objects attached to the same Nucleus solver, the output nParticle should be assigned to a different Nucleus solver.