Geometry, Mapping, and 3D/4D State › Neural Fields and Dynamic 3D Representations
World Models HandbookAll chapters Geometry, Mapping, and 3D/4D State › Neural Fields and Dynamic 3D RepresentationsOne section · Sections in this chapter5 / 9 ↓
Reading tools Definitions & inline links
Choose your expertise level to adjust how many terms are explained. Beginners see more tooltips, experts see fewer to maintain reading flow. Hover over underlined terms for instant definitions.
Article links
Make inline references clickable
Dense uniform grids are simple but carry the discretization with them: resolution is fixed, memory grows with the bounded volume, and smooth surfaces become staircases. Each of these costs bites in a different way. Fixed resolution means choosing, at map-building time, a level of detail that may be wrong for every downstream use; memory growing with the full volume means that the empty air in a large room costs as much as the furniture; and staircase artifacts mean that surface normals, which contact planners and physics engines need, are poorly defined at exactly the boundaries that matter. Sparse voxel, octree, and multiresolution grids alter these trade-offs by allocating storage selectively. A modern alternative is to represent the scene as a continuous function of coordinates, parameterized by a neural network.
From Grids to Coordinate Functions
A neural field is a learned mapping from spatial coordinates to scene quantities: occupancy probability, signed distance, density, color, or radiance. Querying it anywhere in continuous space evaluates the representation rather than indexing a fixed output voxel. This inverts the usual relationship between representation and query: a grid stores answers at grid points and interpolates between them, while a field computes the answer on demand. For a pure fixed-size coordinate MLP, parameter storage does not grow with the queried spatial volume, although resolution remains limited by model capacity. Hybrid neural fields can add multiresolution hash grids, sparse voxels, or explicit primitives whose storage does scale with coverage and detail. Gradients with respect to coordinates are available by automatic differentiation, which matters for optimization and analysis. The components are:
- Coordinate input: a position, optionally with viewing direction or time.
- Feature mapping: an encoding of coordinates (more on this below) that makes the target function learnable.
- Field network: a small MLP mapping encoded coordinates to scene quantities.
- Query-based supervision: the network is trained on observations tied to coordinates, such as "this ray terminates here" or "this pixel has this color."
The immediate question is why an MLP is a good idea at all, because vanilla coordinate networks have a well-documented weakness: ReLU MLPs are piecewise linear and often learn low-frequency structure before high-frequency detail, a phenomenon called spectral bias. Under a fixed model and optimization budget, that preference can blur the sharp boundaries that geometry depends on. A standard remedy is a Fourier feature mapping: before feeding coordinates to the network, map them through random frequencies,
with a matrix of random frequencies. The sinusoidal encoding exposes basis functions at selected spatial frequencies and changes the optimization bandwidth. The MLP can combine those features to fit fine detail instead of constructing all high-frequency variation from many raw-coordinate piecewise-linear regions. The frequency distribution in is a design parameter: too narrow a bandwidth loses detail, while an unnecessarily wide bandwidth can increase noise-fitting risk with finite samples and insufficient regularization. Bandwidth and regularization should be tuned against held-out data. Let's see the effect directly, by fitting a 2D occupancy field (a toy stand-in for a 3D neural field) with and without Fourier features.
import torch
import torch.nn as nn
torch.manual_seed(0)
n_grid, field_extent = 96, 1.0
def make_field(n, extent):
"""Signed distance of three disks on a 2D grid, and its occupancy."""
xs = np.linspace(-extent, extent, n)
X, Y = np.meshgrid(xs, xs)
pts = np.stack([X, Y], axis=-1).reshape(-1, 2)
d = np.stack(
[
np.linalg.norm(pts - np.array([-0.35, -0.20]), axis=1) - 0.28,
np.linalg.norm(pts - np.array([0.30, 0.30]), axis=1) - 0.18,
np.linalg.norm(pts - np.array([0.35, -0.35]), axis=1) - 0.12,
]
)
return pts, d.min(axis=0), (n, n)
pts, sdf, field_shape = make_field(n_grid, field_extent)
occ = (sdf < 0).astype(np.float32)
class CoordMLP(nn.Module):
def __init__(self, in_dim=2, width=64, depth=3):
super().__init__()
layers = [nn.Linear(in_dim, width), nn.ReLU()]
for _ in range(depth - 1):
layers += [nn.Linear(width, width), nn.ReLU()]
layers += [nn.Linear(width, 1)]
self.net = nn.Sequential(*layers)
def forward(self, x):
return self.net(x).squeeze(-1)
def fourier_features(x, B):
proj = 2 * np.pi * x @ B.T
return torch.cat([torch.cos(proj), torch.sin(proj)], dim=-1)
def train_field(encode, in_dim, steps=600, lr=1e-2, batch=2048):
model = CoordMLP(in_dim=in_dim)
opt = torch.optim.Adam(model.parameters(), lr=lr)
Xt = torch.tensor(pts, dtype=torch.float32)
yt = torch.tensor(occ, dtype=torch.float32)
for _ in range(steps):
idx = torch.randint(0, len(Xt), (batch,))
x, y = Xt[idx], yt[idx]
opt.zero_grad()
loss = nn.functional.binary_cross_entropy_with_logits(
model(encode(x)), y
)
loss.backward()
opt.step()
return model
B = torch.randn(16, 2) * 4.0
model_plain = train_field(lambda x: x, in_dim=2)
model_fourier = train_field(lambda x: fourier_features(x, B), in_dim=32)with torch.no_grad():
Xt = torch.tensor(pts, dtype=torch.float32)
pred_plain = torch.sigmoid(model_plain(Xt)).numpy().reshape(field_shape)
pred_fourier = (
torch.sigmoid(model_fourier(fourier_features(Xt, B)))
.numpy()
.reshape(field_shape)
)
occ_grid = occ.reshape(field_shape)
def iou(pred):
p, g = pred > 0.5, occ_grid > 0.5
return (p & g).sum() / (p | g).sum()
occupied_fraction = occ_grid.mean()
iou_plain = iou(pred_plain)
iou_fourier = iou(pred_fourier)Occupied fraction of the domain: 0.096 IoU, plain coordinate MLP: 0.972 IoU, Fourier-feature MLP: 1.000
In this seeded realization, both networks fit the rough shape, but the plain coordinate MLP blurs the boundaries while the Fourier-feature model produces sharper edges and higher intersection-over-union. The occupied fraction provides the context for why this matters: the disks occupy only a minority of the domain, so a network that predicts the smooth background well can achieve deceptively decent overall accuracy while being systematically wrong along every boundary, which is exactly where a planner needs the map to be right. This is an illustration, not an isolated causal estimate of the encoding effect. Hidden depth and width, training data, and step count are held fixed, but the Fourier mapping increases the input dimensionality and first-layer parameter count. Because the two training calls consume one advancing random-number stream, their parameter initializations and realized minibatch sequences also differ. A controlled comparison would use paired batch schedules and repeated seeds, then either match total capacity or explicitly treat the larger first layer as part of the intervention. The visible result is consistent with the spectral-bias motivation, but these panels alone do not establish which changed factor caused the difference.



Neural Radiance Fields and Their Descendants
One of the most influential neural-field formulations for view synthesis is the neural radiance field (NeRF). Here maps a 3D position and viewing direction to emitted color and volume density. The viewing-direction input is what allows the field to represent view-dependent appearance, such as specular highlights that move as the camera moves, while the position input carries the underlying geometry. A camera image is rendered by volume rendering: march a ray through the field, and accumulate color weighted by transmittance,
Here is the number of ordered ray intervals, is the color predicted at sample , and is the background color. Each is the conditional opacity, or termination probability at sample given that the ray reached that interval, and is the probability it survived all earlier intervals. Their product is the unconditional probability mass assigned to termination at sample . The residual survival mass weights the background color ; that term vanishes for a black background and becomes negligible when the sampled volume is effectively opaque. The formula is a soft, differentiable version of ray casting: instead of taking the first surface hit, it sums contributions from all samples along the ray, each discounted by the probability that the ray was already absorbed before reaching it. Samples deep behind an opaque surface contribute almost nothing because has decayed to nearly zero, which is how occlusion emerges from a fully differentiable sum. Because rendering is differentiable, the network trains directly from posed images by gradient descent on photometric reconstruction. A shared radiance field couples the training views through one differentiable rendering model. Standard NeRF assumes known camera poses and jointly optimizes density and appearance; later methods such as BARF additionally parameterize and refine camera poses. This shared rendering objective encourages cross-view consistency, but photometric ambiguity, calibration error, and optimization pathologies mean it does not guarantee unique or correct geometry.
Three practical lineages matter for world models:
- Fast per-scene fields: multiresolution hash encodings and sparse explicit structures can reduce per-scene optimization dramatically by shifting work toward local learned lookups. The achieved runtime depends on the method, hardware, scene, optimization budget, and target quality. These approaches replace much of a deep MLP's work with learned values on a multiresolution structure, so the network refines locally stored detail. Speed matters for world models because a representation that is too slow to update cannot participate in the online perception-prediction-action loop.
- Feed-forward generalization: rather than optimizing per scene, networks predict field parameters (or directly predict geometry) from one or a few images, amortizing a learned prior over scenes. This is the geometry-flavored cousin of the amortized inference we discussed in Part III. The optimization-based version finds the scene that best explains the images; the feed-forward version predicts a scene from learned priors in one pass, and some systems optionally refine that prediction with per-scene optimization. Feed-forward inference is faster but prior-dependent in the same broad sense as monocular depth.
- Explicit hybrid representations: 3D Gaussian splatting represents the scene as a set of anisotropic 3D Gaussians with positions, covariances, opacities, and colors, optimized through a differentiable rasterizer. It keeps the differentiable, multi-view-consistent training recipe of NeRF but replaces the implicit field with an explicit, sortable, splattable primitive set, which is what makes real-time rendering possible. The explicit form exposes direct per-primitive operations: primitives can be added, removed, moved, and grouped. Later systems can exploit those operations for editing or dynamics, but object-level use still requires correspondence, persistent identity, and grouping mechanisms.
From 3D to 4D
Real environments change. Extending neural fields to 4D means representing , and the interesting design question is how time enters, because different answers buy different structure. Three prominent families are useful for organizing the literature:
- Time-conditioned fields: add (or a time encoding) as network input. This simple parameter sharing can encourage smoothness, but it provides no explicit temporal-coherence guarantee and may generalize poorly beyond observed times. That limitation motivates structured deformation or motion models for world-modeling tasks.
- Canonical space plus deformation: model a static canonical scene and a learned warp that maps time- points into canonical space. Dynamics become a flow of geometry rather than an independent stack of frames, which regularizes the model and makes motion an explicit, queryable quantity, closely related to the scene flow of the previous section. The structural assumption is that most of the scene persists and only moves: appearance and shape live in the canonical field, and the warp carries the dynamics. When that persistence assumption fails, a single topology-preserving deformation of a fixed canonical field cannot represent births, deaths, or topology changes without additional time-dependent density, visibility, appearance, or residual mechanisms. More general non-injective warps or time-varying field support relax this limitation but also weaken the simple persistent-scene interpretation.
- Per-time explicit representations: sequences of Gaussian splats or meshes with motion fields between them form an active family in dynamic-scene and driving-scene reconstruction. This family gives up some of the compactness of a single global representation in exchange for per-frame flexibility, and the motion fields between frames reconnect the frames so that motion remains a first-class quantity rather than an artifact of frame-to-frame comparison.
It is tempting to call a 4D reconstruction "a world model of the scene." Resist that temptation, at least for now. A neural field is a scene representation. Paired with camera geometry, a renderer, and a likelihood, it can support the observation model from our Part I taxonomy. Because a 4D field includes time, it may encode or interpolate time-indexed changes in geometry and appearance. By itself, however, it does not define an action-conditioned state-transition model or establish reliable future extrapolation. Without actions and transition structure as inputs, it also cannot answer counterfactuals about actions the agent did not take, which are exactly the questions a planning agent must ask. Reconstructing yesterday and predicting tomorrow are different capabilities. The next chapter, on physical dynamics and constraints, is about that second half.