038 · GEOMETRY NODES
locus est numerus · the field is the function
Project Lavos · The Stack
Plate XXXVIII · Field Visualizer FIELD ▸ FLOAT

Locus est numerus.

— PLACE IS NUMBER —

the field.

Jacques Lucke  ·  Blender Foundation  ·  shipped 2.92 · fields in 3.0 · 2021

BLENDER NATIVE · C++ · LAZY EVAL · DOMAIN-AWARE · NO LONGER AN ADDON

Animation Nodes carried values through wires. Geometry Nodes carries fields. A field is not a number — it is a function over the geometry's domain: evaluate it per vertex, per edge, per face, per point, per instance. Same graph; different result at every position. The addon Lucke wrote ten years ago became the engine the way a sketch becomes a building. The wire became the field.

— Plate XXXVIII · Scalar Field over a 24×24 Grid · One Domain — f(x, y) = sin(x · π) · cos(y · π)
— Fig. I · the same graph, evaluated at 576 positions — — I · DOMAIN — — a flat plane, 12×12 vertices — — II · FIELD — — f(x, y) = sin(xπ) · cos(yπ) — — III · INSTANCE — — scattered, density ∝ field — EVAL @vertex SCATTER density · f DOMAIN 144 verts FIELD TYPE SCALAR · float EVAL lazy · per-point OUTPUT 324 instances
— Domain — 144 verts · plane
— Field — scalar · lazy
— Eval — @vertex · per-domain
— Output — 324 instances · scatter
step i.
position.
P → vec3
A field that returns the position of every point. The simplest field — identity.
step ii.
transform.
P · π → sin(...) · cos(...)
Position passed through math: a periodic checker, evaluated lazily, never stored.
step iii.
density.
scatter(P, density: |f|)
The field becomes density. The graph never declared per-point loops; the engine did.

The graph does not say "for each vertex". The graph says: this is a function of position. The engine handles the iteration. That is the leap. A node is no longer an operation on a value — it is an operation on a field.

Animation Nodes promised it. Sverchok approached it. Geometry Nodes shipped it, and the addon Lucke started in 2014 became the way Blender models from 2021 onward. The wire became the field.

Authorship & Provenance colophon — addon, become engine
Architect
Jacques Lucke
author of Animation Nodes · 2014
Blender Foundation core dev · since 2018
github.com/JacquesLucke
Architecture
Native C++ · in-engine
field-based · lazy · domain-aware
simulation zones · repeat zones
~400 nodes · still growing
Replaces
Particle systems
Modifier stacks (eventually)
Many parametric workflows
same graph idea, native

— Lineage · the addon-to-engine arc, completed —

2014Animation Nodes · Lucke ships the first version of the addon as a Blender community contribution.
2018Lucke joins the Blender Institute. Begins designing what will become Geometry Nodes natively.
Feb 2021Blender 2.92 — Geometry Nodes ships. Initial scope: scattering and instancing.
Jun 2021Blender 2.93 — full geometry-processing nodes. Mesh primitives, transforms, attribute math.
Dec 2021Blender 3.0 — the FIELDS paradigm. Wires now carry functions, not values. The conceptual revolution.
2023Blender 4.0 — node-tree assets, simulation zones, repeat zones. Procedural simulation enters the engine.
2024Blender 4.1 — tools mode. Geometry Nodes that act on selection like a regular modeling operation.
The wire became the field. The addon's coda was prophetic.

every point. one rule.

Animation Nodes carried values. Geometry Nodes carries functions. The wire became the field.

— locus est numerus —
— § I · Authoring · Procedural / Native —
Plate XXXVIII · MMXXVI
projectlavos-bauhaus · 038