A procedural node that is capable of reading Alembic files.

An example Alembic file can be found here.

Choose Alembic from the Type menu in the Arnold Procedural

Information about common Arnold settings can be found here.


The path to the Alembic file.


Optional prefix to add to all nodes created by the procedural.

Object Path

The Alembic path to expand from in the hierarchy.

Start Frame

First frame of the animation when a frame sequence is defined.

End Frame

Last frame of the animation when a frame sequence is defined.

Step Frame

Frame step of the animation when a frame sequence is defined.


Defines how the animation is repeated.

  • none: no repeat, nothing is displayed when the animation is ended.
  • freeze: keeps the last frame rendered when moving further on the timeline.
  • repeat: repeats the animation from the beginning.
  • ping pong: will animate forward, then in reverse, then forward again, and so on.


The frame rate in units of frames per second.

Animate in Editor

When enabled the procedural is animated in the viewport. Note that this requires reading geometry from the Alembic file in each frame which can slow down the playback.

Ignore Parent Transform

If set to true, the parent transforms of the selected object (provided as the object path) will not be used.


Use instancing for polymesh nodes that have the same shape. This behavior is disabled by default. If enabled, the procedural will attempt to identify identical primitives (using Alembic's per-array-property hash keys) and create corresponding "ginstance" nodes. Two primitives are considered equivalent if the keys of their relevant point position samples match along with any specified subdivision values. This works across multiple archives or invocations of the procedural.

Flip V

Flip polymesh v coordinates.

Scene Camera

Alembic camera name to replace the scene camera.

Pull User Parameters

If you want to pass parameters through to the shapes being created, declare user data with the same type as the parameter, prefixed by the shape name and a colon ( : ). For example, use <shape>:<parameter>. So the following declaration will ensure that every polymesh created will have step_size set to 0.1.

pull_user_params on
declare polymesh:step_size constant FLOAT
polymesh:step_size 0.1

Material Attribute

Defines which alembic property in the file contains the material names, which if present will be used to create the per polygon shidxs arrays on the polymesh node.

Use Instance Cache

This can be used to disable the internal archive cache that shares alembic data between nodes, this helps when using operators to override alembic contents and make_instance is enabled. The parameter is enabled by default.

Velocity Ignore

Don't do velocity motion blur even if velocity attrs exist.

Velocity Scale

Scale the velocities used for velocity motion blur.

Visibility Ignore

Ignore visibility in the alembic file and process all shapes as if visible.

Expand Hidden

If set, all shapes are expanded despite their alembic visibility.

Radius Attribute

The name of the attribute that is looked up to give radius for points and curves default is blank so uses the alembic defaults of widths.

Radius Default

Default radius for curves and points if not specified via an attribute.

Radius Scale

Scale the radius attribute that is resolved.


Adds extra files that can be used to override properties in the Alembic file.

  • No labels