The X-Particles Control System

This is the heart of X-Particles and the reason it was written in the first place. It is intended to make control of the system more powerful than the standard Cinema 4D emitter without the complexity of a heavily Xpresso-based system like Thinking Particles. This section is an overview of how the control system works, but for full details of each object, please see these pages:

The X-Particles control objects

The control system comprises a number of objects. Two of these, the System object and the Action object, can be accessed from the X-Particles menu. The other object is the Question object but these can only be created from an emitter (in the emitter's Questions tab).

To see how this works, add a System object to the scene. When a System object has been added, the Object Manager looks like this:

You can see several objects in the scene. As well as the System object itself, there are eight special null objects called Dynamics, Groups, Emitters, Generators, Other Objects, Modifiers, Questions, and Actions as child objects of the System object.

The named null objects are there purely to keep the Object Manager tidy. You are NOT required to put your groups, emitters, generators, modifiers, questions, and actions into these nulls! If you add such objects by using the System object, they will automatically be put into the nulls for you. If you add the objects from the main plugin menu you can drop them in the special nulls yourself if you wish, or leave them elsewhere if you don't want to use the nulls.

You can use the individual object menus on the System object to add additional objects at any time, but you will need to move them into whatever link field or include list the setup requires. This may sound a little confusing at first, but it will become easier as you try the example scenes provided.

Note also that you can add multiple emitters to the scene, then use the same, or different, Questions and Actions for the different emitters. Different Questions can use the same Actions, which keeps the system flexible and avoids unnecessary duplication of objects.

You can also have more than one System object. By doing that, you can have multiple but completely separate systems in one scene, each with its own Questions, Actions, and if you wish, modifiers.

For the moment, just do the following:

  • in the System object, click and hold on the 'Generator Objects' button; from the drop-down list, select ‘Emitter’, and an Emitter is created and automatically dropped into the 'Emitters' null
  • also in the System object, click and hold on the 'Other Actions' button; from the drop-down list, select ‘Editor Display Only’ and an Action object of that type is created and automatically dropped into the 'Actions' null
  • in the new Action object, check the 'Change Editor Display' switch and change the particle colour to a colour of your choice (and the shape, if you like)
  • in the Emitter, go to the Questions tab and click 'Add Question'; a Question object is created and automatically dropped into the 'Questions' null
  • in the object manager, drag and drop the editor display Action you created into the 'Actions' list of the Question object
  • finally, in the Question object, change the ‘Frames’ parameter to 1 second (this is 30 frames if your frame rate is 30 frames per second, or 25 frames if it is 25 frames per second)

Play the animation. You see that when each particle is over 30 frames old, it changes colour from the one it was created with to the colour you chose in the action. Changing these parameters, although they only affect the editor display, can be enormously helpful when setting up a complex system, since you can see which particles are being affected by an action and when.

How does it all work?

What X-Particles does is this: at each frame, every generated particle is tested against the question in the Question object. By default, the question is whether the particle age exceeds a certain time (the default setting is 3 seconds). If that question is true (i.e. the particle is indeed more than 3 seconds old) control is passed to each Action object in turn in the Actions list of the Question. You may only need one Question and one Action in your setup, but you can have as many as you like, and each Question may contain multiple Actions.

If there is no Action in the Actions list of the Question, nothing will happen. Likewise, if the Question or Action is disabled (has a red cross against it) in the object manager, nothing will happen. Also, for any Question to be tested, it must be present in the Questions list of one or more emitters.

When the Question is active and it is tested and passed by a particle, it will then carry out all the Actions associated with it. Each Action will be carried out in turn. In the example above, all we did is change the colour of the particle in the editor, but there are a lot more possible actions than that.

For this simple setup all you see is a change in the particles in the editor. However, you can create more than one Question for each emitter; to make the emitter test the new Question, you must add it to the Questions list of the emitter. But how does X-Particles test these different Questions? And in what order does it do it? Details of this are provided in the reference section of theĀ Question object.

That concludes this brief overview of the X-Particles control system.