Adaptive Wilds / TreeGen
Sphere original · Game in developmentGrowing a forest
from data.
Sphere’s procedural vegetation tooling for Adaptive Wilds, an original game in development. The in-engine system uses Rust and Bevy; the interactive browser study below demonstrates a selected part of that work.
The challenge was not producing one convincing tree. It was defining many species through compact parameter data, reconstructing exact trees for interaction, and prebaking their runtime representations without losing the structure behind them.
Interactive system study
Change the inputs.
Preserve the structure.
Change the starting form, watch the tree grow, then remove a branch and restore it. The preview shows software responding to your choices while keeping track of the structure behind the image.
Try it in three steps Quick walkthrough
- 01
Make it different.
Choose a Starting form, then use New seed to generate a variation. Drag the preview to look around the tree.
- 02
Watch it grow.
Select Grow tree to reveal how the branches develop. Use Stop to return to the complete tree.
- 03
Cut. Restore. Compare.
Use Prune example to remove a branch, then Restore seed to bring back the original structure.
This is a browser study from Adaptive Wilds, a game in development. It demonstrates interactive tooling; the full game and export pipeline are outside this preview.

01 The browser implementation reproduces the production system’s seeded authorship and editability at a deliberately reduced scope; project serialization, persistent world state and the full LOD export pipeline remain outside the study.
The system
A tree is a graph
before it is a mesh.
At authoring time, a tree is compact data: a seed, a species preset, whole-tree ranges and an ordered hierarchy of branch emitters. Each emitter bounds characteristics such as coverage, survival, angle and foliage distribution. The seed samples those ranges deterministically, allowing variation without giving up reproducibility.
Generation expands that source into parent-child branch edges with stable identifiers. Geometry and foliage are outputs of the graph, not its only record, so a branch can still be found, pruned or damaged and the exact tree reconstructed when gameplay needs its full structure.
The browser study exposes this data model at a reduced scale. It demonstrates ranged authorship and hierarchy editing without presenting project files, serialization or production export controls.
- 01
Source
A seed, species preset and authored ranges provide compact, repeatable inputs.
- 02
Resolve
Ranged values and nested emitters become deterministic branch events.
- 03
Structure
Stable identifiers preserve parent-child relationships for growth, cuts and damage.
- 04
Deliver
The graph produces geometry, foliage and distance-ready representations.
Editable source, scalable output
One source.
Two representations.
One detailed tree is not a rendering problem. A forest is: repeated branch geometry, foliage materials, shadows and wind compound into thousands of potential draw calls. Keeping every tree fully generated and simulation-ready would make vegetation the frame-rate bottleneck.
Adaptive Wilds keeps two representations of the same tree: compact seeded source data for reconstruction and interaction, and prebaked multi-LOD outputs for forest rendering. Detailed silhouettes survive up close while geometry and material cost fall progressively with distance.
- 01
Source
The seed, species preset and emitter hierarchy remain the compact source of truth.
- 02
Bake
The resolved tree becomes detailed geometry, cheaper LODs and distance-ready representations.
- 03
Render
Each tree uses the cheapest appropriate output, with foliage batched to keep forest draw calls down.
- 04
Reconstruct
Interaction rebuilds the exact hierarchy from its seed, then resolves cuts against stable branch identifiers.
Demonstrated in the browser
- Seeded species presets and deterministic ranged generation
- Nested branch emitters and an editable hierarchy
- Stable branch replay for growth, pruning and felling
- Authored or browser-local materials with batched foliage
- Deciduous growth and seasonal state playback
Retained by the production pipeline
- Production species library and high-detail swept geometry
- Prebaked LOD and impostor outputs
- Persistent damage, physics, wind and environmental response
- Integration with world simulation state
Structured generation
The forest is rendered.
The tree remains editable.
Adaptive Wilds is in development. This browser study isolates one production concern: preserving procedural structure as useful game data while delivering forest-scale runtime outputs.
Discuss a technical project