Geometry Spreadsheet

Understanding geometry components and data

Geometry Components

Houdini geometry is made up of four main components, each storing different types of data and serving specific purposes in the 3D pipeline.

Points

Individual vertices in 3D space. Each point has a position (@P) and can store attributes.

Example: A cube has 8 points (corners)

Vertices

Connection between points and primitives. Store per-corner data like UVs and normals.

Example: Each face corner has unique UV coordinates

Primitives

Faces, curves, or volumes. Define surface topology and connectivity.

Example: A cube has 6 primitive faces

Detail

Global geometry data. One detail per object, stores object-level information.

Example: Object name, creation time, global settings

Geometry Spreadsheet

Essential Debugging Tool

The Geometry Spreadsheet displays all geometry data in table format. It's your window into what's actually happening with your geometry and attributes.

What You Can See

  • • Point positions and attributes
  • • Primitive connectivity
  • • Vertex data (UVs, normals)
  • • Detail attributes
  • • Group memberships
  • • Custom attributes

How to Access

  • • Press G key
  • • Click spreadsheet icon in toolbar
  • • Right-click node → Inspect
  • • View menu → New Pane → Geometry Spreadsheet

Pro Tips

  • • Use tabs to switch between Points, Primitives, Vertices, Detail
  • • Click column headers to sort data
  • • Select rows to highlight geometry in viewport
  • • Double-click cells to edit values directly

Attributes vs Groups

Attributes

Data attached to geometry components

@P   # Position (vector3)
@N   # Normal (vector3)
@Cd  # Color (vector3)
@v   # Velocity (vector3)
@id  # Unique ID (integer)
@uv  # UV coordinates (vector3)
  • • Float, Vector3, Integer, String types
  • • Created via Attribute Create, Wrangle, or VOPs

Groups

Named selections of geometry components

@group_top      # Point group
@group_walls    # Primitive group
@group_seams    # Edge group
@group_corners  # Vertex group
  • • Boolean: in group (1) or not (0)
  • • Used for selective operations
  • • Access via @ syntax in VEX
  • • Visible in spreadsheet

Working with Data

Creating Attributes

  • • Attribute Create node
  • • Attribute Wrangle (VEX)
  • • Point/Primitive nodes
  • • VOP networks

Creating Groups

  • • Group Create node
  • • Group Expression node
  • • Manual selection tools
  • • VEX in Attribute Wrangle

Common Operations

  • • Attribute Transfer
  • • Attribute Promote
  • • Attribute Delete
  • • Group Promote

VEX Examples

// Create random colors
@Cd = rand(@ptnum);

// Create group based on Y position
@group_top = @P.y > 0.5;

// Add noise to position
@P += noise(@P) * 0.1;