What Are Elements?
Procedural data moves through OctoShaper as an ElementSet: elements are rows, attributes are named columns, and nodes transform the collection.
Mental Model
Read an ElementSet like a procedural spreadsheet
A graph is usually not thinking about one rock, one spline point, or one spawn target. It is thinking about a whole table of elements and deciding which rows to add, remove, or enrich.
An element is one unit of procedural work
Depending on the graph, one element might represent a point in space, a potential building piece, a placed prefab, a spline sample, or a candidate in a scatter pass.
The important part is not the label. The important part is that each row keeps all the values for that one unit together while the graph processes the whole collection.
Attributes are the payload
- Attributes are stored by name and type across the full set.
- Some attributes are geometric, such as position, rotation, or scale.
- Some are semantic, such as prefab choice, biome tag, mask weight, or any custom value your graph produces.
- Nodes can create new attributes, overwrite existing ones, or use them to decide which rows survive.
What nodes usually do to the table
Generate
Create rows or expand the current set. A generator might turn one input row into many output rows.
Modify
Add attributes, transform values, or derive new columns from existing data.
Filter
Remove rows that no longer match the procedural rule you want to keep.
By the time the graph reaches main output, the ElementSet is the final table that runtime instancing, visualization, or import workflows consume. Those consumers are covered in Runtime Generation and Procedural Prefab.
To see how main input, parameters, and main output frame this data flow, continue with Node Graph Basics.