# Instance on Points Node

The *Instance on Points* node adds a reference to a geometry to each of the points present
in the input geometry. Instances are a fast way to add the same geometry to a scene many times
without duplicating the underlying data. The node works on any geometry type
with a *Point* domain, including meshes, point clouds, and curve control points.

Any attributes on the points from the *Geometry* input will be available on the instance
domain of the generated instances.

Tip

The Make Instances Real operator can be used to create objects from instances generated with this node.

Note

To instance object types that do not contain geometry, like a light object, the Object Info Node can be used. Other objects like Metaball objects are not supported for instancing.

## Inputs

- Geometry
Standard geometry input. The position of the points of this geometry affect the transforms of each instance output.

Note

If the input geometry contains instances, the node will create more instances on the points inside the instances, creating nested instancing. In this case, each new instance will have the transform created by the node from the

*Rotation*and*Scale*inputs, but it will*also*be transformed based on the parent instances.- Selection
Whether to instance on each point. True values mean the an instance will be generated on the point, false values mean the point will be skipped.

- Instance
The geometry to instance on each selected point. This can contain real geometry, or multiple instances, which can be useful when combined with the

*Pick Instance*option.- Pick Instances
If enabled, instead of adding the entire geometry from the

*Instance*input on every point, choose an instance from the instance list of the geometry based on the*Instance Index*input. This option is intended to be used with the Collection Info Node.- Instance Index
The selection of index for every selected point, only used when

*Pick Instances*is true. By default the point ID is used, or the index if that doesn’t exist. Negative values or values that are too large are wrapped around to the other end of the instance list.- Rotation
The Euler rotation for every instance. This can use the rotation output of nodes like Distribute Points on Faces and Curve to Points. An Euler rotation can also be created from a direction vector like the normal with the Align Euler to Vector Node.

- Scale
The size of each generated instance.

## Properties

This node has no properties.

## Outputs

- Geometry
Standard geometry output. If the

`id`

attribute exists on the input geometry, it will be copied to the result instances.