Table of Contents
Position Born Operator
Position Born is an operator that conditionally creates particles at a specific position in space.
While the Position Born operator creates particles on its own without needing any input data streams, like most other operators in thinkingParticles , it can be controlled in a rule-based manner. Be aware that the ON input data stream can be connected (through another collection of operators and conditions) and through its connection it can create some advanced and amazing effects. Make sure to read the description about the Pistol Shot option of this operator to see what can be achieved.
Operator Inputs
Time - (Time) This input data stream is used to define the local time for the operator when the user wants to override the default system time.
On - (Bool) This input data stream determines whether the operator is considered 'on' or 'off.' You can connect other operators to this input channel such as a Bool Helper to activate/deactivate the whole operator.
Particle - (Particle) - This input data stream reads in the currently selected particle group to the Position Born operator.
Position - (Position) This input data stream feeds a position value in and sets the point in space used for particle emission. Be aware that this position input is not needed when a Particle input (above) is connected unless you wish to create particles in a different location (or perhaps set an offset based on another rule).
Speed - (Speed) This input data stream sets the speed for the particles generated within the Position Born operator.
Direction - (Direction) This input data stream sets the directional vector for the emission of the particles created within the Position Born operator.
Size - (Size) This input data stream sets the size in world units of the particles created within the Position Born operator.
Mass - (Mass) This input data stream sets the mass of the particles created within the Position Born operator.
Spin - (Spin) This input data stream is used to provide the angular direction value for the born particles to use for their motion.
Alignment - (Alignment) This input data stream is used to set the initial alignment of the particles when they are born.
Life Span - (Life Span) This input data stream supplies the particle life span for all particles created within the Position Born operator.
Life Variation - (Scalar) This input data stream provides a variation amount for the particle life span for all particles created within the Position Born operator.
Speed Variation - (Scalar) This input data stream reads in a variation amount for the particle speed for all particles created within the Position Born operator.
Direction Variation - (Angle) This input data stream provides a variation amount for the particle emission direction for all particles created within the Position Born operator.
Size Variation - (Scalar) This input data stream provides a variation amount for the particle size in world units for all particles created within the Position Born operator.
Mass Variation - (Scalar) This input data stream provides a variation amount for the particle mass for all particles created within the Position Born operator.
Distance - (Scalar) This input data stream supplies an Emit Distance (offset) to the position where all of the particles are created within the Position Born operator.
Distance Variation - (Scalar) This input data stream supplies a variation to the Emit Distance (offset) for the position where all of the particles are created within the Position Born operator.
Birth Type - (Integer) This input data stream sets which of the three birth types will be used for the creation of particles (e.g. - Count, Particles / s, Pistol Shot). The range of integer values goes from 0 to 2, with 0 = Count, 1 = Particles / s, 2 = Pistol Shot.
Count - (Integer) This input data stream provides the value for the number of particles to be created at any time. In order for the connected operator to be used, the Birth Type input must be set to Count in the rollout, or there must be a connected operator that sets the Birth Type to 0.
Rate - (Scalar) This input data stream provides the value for the number of particles to be created per second. In order for the connected operator to be used, the Birth Type input must be set to Particles / s in the rollout, or there must be a connected operator that sets the Birth Type to 1.
Shot - (Integer) This input data stream provides the value for the number of particles to be created at one time. In order for the connected operator to be used, the Birth Type input must be set to Pistol Shot in the rollout, or there must be a connected operator that sets the Birth Type to 2.
Operator Outputs
Born Particle - (Particle) This output data stream sends particle data for newly created particles to other operators. Every particle birth will activate all rules connected to this particle data stream. As a result , this can be used to directly assign a value to the particle.
Particle Frame Counter - (Integer) This output data stream provides a “counter-like” function that holds the current number of created particles at the given frame. This counter is reset per frame and starts over again at 0. As a result, you can use this output data when you want to trigger other rules based on the creation of a certain number of particles.
Do not confuse this value with the lifetime particle ID every particle has.
Particle Animation Counter - (Integer) This output data stream provides a “counter-like” function that holds the current number of created particles at the given point in the animation. This counter is NOT reset per frame and accumulates the total number of particles created over the course of the animation. As a result, you can use this output data when you want to trigger other rules based on the creation of a certain number of particles.
Generator - this output enables the multi-threaded creation of particles or particle clouds. Generator outputs are used to directly connect to an ExpressionME-L node. If the Generator is the first input of the ExpressionME-L Node, the created particles will be processed in parallel.
Rollout Menu
Group - When particles are created, a target particle group must be selected. Choose any particle group from this group drop down list to store the newly created particles in.
Count - When this radio button is selected the spinner to it's right sets the maximum amount of particles that will be created at any time.
Particles / (s) - When this radio button is selected the spinner to its right determines how many particles per second are created. Remember this simple formula when determining how many particles will be emitted per frame: number of seconds = amount of frames/FPS rate. This option is most useful for fast moving objects such as rocket trails, because there is no frame dependency that might cause trouble.
Pistol Shot - When this radio button is selected, particle creation is set to go all at once. Be aware that you can trigger an On/Off activation cycle to continually emit blocks of particles from the Position Born operator.
In contrast to standard 3ds Max particle systems, this feature gives you the ability to exactly control the number of particles born per activation event. Connecting an animated Bool operator to the On input data stream can help create this kind of effect.
In the sample shown above, particles create Teapot objects on impact on a ground plane. The UDeflector collision output will activate the ON input data stream within the Position Born operator whenever a particle hits a deflector. When such an event occurs, Position Born becomes active and creates a new Teapot object, because the Pistol Shot value is set to 1 particle per activation. The rule setup as shown above is the preferred one.
Per Call - when checked, new particles will be created on each call of this operator. Note this feature is only valid for the pistol shot mode! With every call of the operator, a particle is created. In all other cases particles will be created when the On input switches from False to True.
Life Span - This spinner sets the maximum life time a particle may have before it is killed.
Variation [%] - This spinner assigns different Life Span values for each particle created by Position Born. A Variation value of 100% means that every particle created will get a different Life Span value.
Speed - This spinner defines the initial speed of the particles born by the operator.
Variation [%] - This spinner assigns different Speed values for each particle created by Position Born. A Variation value of 100% means that every particle created will get a different Speed value.
Direction - The three direction spinners define the directional vector for the newly created particles. By changing the X, Y and Z values, any direction vector may be defined.
Variation [*] - This spinner assigns different directional values for each particle created by Position Born. A Variation value of 100% means that every particle created will get a different direction value.
Size - This spinner sets a specific particle size when a particle is created. Be aware that the size value is measured in world units.
Variation [%] - This spinner assigns different size values for each particle created by Position Born. A Variation value of 100% means that every particle created will get a different Size value.
Mass - This spinner sets a specific mass for all particles created by Position Born.
Variation [%] - This spinner assigns different Mass values for each particle created by Position Born. A Variation value of 100% means that every particle created will get a different Mass value.
Emit Distance - By default, all particles created by Position Born will be created at the position (point) as it is supplied by the Position input or from the Origin (if no Position input data stream is connected). This spinner will add an offset along the Direction vector as set in the X, Y and Z Direction spinners in this operator. So, for instance, if you've set the Z Direction spinner to 1.0, changing the Emit Distance value to 15 will offset the emission point up by 15 units.
Variation [%] - This spinner assigns different Emit Distance values for each particle created by Position Born. A Variation value of 100% means that every particle created will get a different Emit Distance value.
Random Seed - Each particle generator carries its own random seed. Change this value to make the particles behave differently from other Position Born operators.
©2024, cebas Visual Technology Inc.