Points

Points

Function. Outputs the position of exactly one of the points you place by hand.

Valid input range is [0; 1]. The input is split between the points in their order: t = 0 picks the first point, t = 1 the last one, and every point gets one continuous share of the range. The block never returns a position between two points — that is what tells it apart from Path2, which slides along the whole line.

Use it when particles must appear precisely at spots of your art — light bulbs around a sign, sparks at the tips of a star, studs placed by eye with uneven spacing.

When the block is selected, the points are placed and moved in the Preview window with the same editor as a path. The points are connected by straight lines that only show their order; there are no curves.

How the input picks a point

Mode decides how wide each point's share of [0; 1] is:

Mode Share of each point
Uniform (default) Equal: with N points, each one gets 1/N of the range
Length weighted Proportional to half of the line to the previous point plus half of the line to the next one

With Uniform every point is picked equally often whatever the spacing. With Length weighted a point that stands far from its neighbours is picked more often, and two points close together share a small part of the range — handy when the points sample a shape and you want an even density along it.

On an open line the first and the last point have only one neighbour, so in Length weighted mode they get half a share. When Closed is on, the closing line from the last point back to the first counts too, and the first point's share stays one piece at the start of the range — the first point is still picked first.

A value exactly on the border between two shares picks the next point. Values below 0 count as 0, above 1 as 1.

Lighting the points one by one

The block has no animation of its own; the input decides which point is used. Two common recipes:

  • In sequence over time. Feed the input from Emitter Time with Uniform mode: the points light up one after another, the first one first. Emitter Time is in seconds, and the input is clamped to [0; 1], so as it is the whole sequence takes one second and then stays on the last point. For a longer or repeating cycle, normalize the time first. A 4-second loop is a / 4 - floor(a / 4), where a is the Emitter Time: in the scheme, put it into an Expression block between the time and the input; in the Emitter Guide, switch the nested Point value to a multi-value, set its row a to Emitter time and type the formula into its expression line.
  • One particle per point. Use a burst generator (GenPeriodic, GenDistance or EvenRing) whose burst size equals the number of points, set its Burst pos mode to Linear, and connect its burst position output (Burst Pos. on EvenRing, burst pos. on GenPeriodic and GenDistance) to the input in Uniform mode: every particle of the burst lands on its own point.

A Random input over [0; 1] simply scatters particles over the points.

Properties & inputs:

  • Input (float): Which point to take, [0; 1].
  • Mode (property): Uniform or Length weighted, see above.
  • Closed (property): Connects the last point back to the first. It only matters for the Length output and the Length weighted mode.
  • Show visualizer (property): Keeps the points visible in the Preview window when the block is not selected.

Outputs:

  • Position (vec3): Position of the picked point.
  • Length (float): Total length of the line through the points (with the closing line when Closed is on).
  • Count (float): Number of points.

Placing the points

The editor is the path editor without curve tools: add, move and delete points, select several and move, rotate or scale them with the gizmo, close the line and reverse the order of the points with the toolbar. Generate offers the polygonal shapes — Polygon, Rectangle, Star, Cross, Arrow, Diamond and Gear — which place a point at every corner (a full-circle Polygon with N edges places N points evenly around it; a partial arc, or one with a rise, places N + 1), and the curves — Ellipse, Spiral, Wave and Rounded Rectangle — whose dialogs ask for a Number of points and place exactly that many, evenly along the curve. Ring is not offered: its two circles cannot be one line of points. The bottom-right corner of the preview shows how many points the line has (and how many are selected), so you can copy the number straight into a burst size. Points copied from a path keep only their positions: any curve between them becomes a straight line.

Export

Points is supported by JavaScript v1.1, C# v1.2 and the GPU export. Older runtimes (JavaScript v1.0, C# v1.0 and v1.1) reject the effect with a message that names the block. An effect can use up to 1024 points in one block.

In the Emitter Guide

Points is also a value type in the Emitter Guide — pick Points in a 3D value's type menu, most usefully on Starting Position. Edit… selects the block and opens the point editor in the Preview window, Mode chooses the split, and the nested Point value is the input — Random by default. Switching to another type and back starts with a new default set of points.

Related

  • Path2 — for placing particles anywhere along a line.
  • Grid — for points on a regular lattice.