Cinema 4D Visualize, Broadcast, Studio Thinking Particles Nodes TP Helper Group PSurfacePosition
Function available in CINEMA 4D Studio

Basic Node Parameter


Choose the object and whether the particles should be emitted from the object’s points, edges or polygons.


Drag the name of the desired polygon object from the Object Manager and drop it into this box.


Use Type to choose whether the positions should be generated on the object’s points, edges or polygons (Type set to Face, Edges or Vertex respectively). In addition, you can restrict the positions to a frozen selection (i.e. a Point, Edge or Polygon Selection tag). Enter the name of the desired Selection tag into the Selection box. For details on frozen selections, please look up the Set Selection.

Here we’ve stuck small, sphere-shaped particles to the surface of a larger sphere. Remember to use a Particle Geometry object to hold the smaller particle spheres and to set the Bounding Radius of the PShape node to a sensible value in relation to the size of the particle spheres.

Additional input ports:


Connect this port to the stream of particles that should be emitted from or placed on the object, such as to the Particle output port of a PPass node.

Animation Time

Since the node’s parameters can be keyframe animated, by default the Cinema 4D time is used internally to ensure that the values are interpolated correctly. However, you can pass your own time value to this port. This should be of the data type Time, which is a Real number in the simplest case. If no value is passed, Cinema 4D’s time is used.

Output ports:

Position [XYZ ]

Outputs the random positions on the object. You can assign these values to particles by connecting this port to the Position port of a PSetData node.


Outputs the Normals of the random positions on the object. Using this information, you can set the velocity of each particle in such a way that the particles move perpendicular to the surface.


Outputs, as vectors, the current alignment of the particles.