Laying out the shell
How the inside of the world gets built from a seed: one map of the shell that every layer shares, a tiling of panels that works on any shape, the layers drawn on top of it, and the steps that turn a seed into a world. What's decided and what's proposed is marked.
Where things stand
- decidedThe inside of the shell is a dream world. The real machinery, the ear and the hull, stays outside and in the lore.
- decidedEverything is procedural. Every idea on this page is a rule for the generator, and the same rules check what it makes.
- decidedTowns stay at block level for now. Later they become a mix of rustic, garden and urban pieces, with walls that suit parkour.
- decidedRegions differ subtly in their flowers and their townscape, not by colour-coded districts.
- decidedThe layout starts roughly symmetric, with north and south clearly different.
- decidedThe hull stays out of play for now.
- builtIn the prototype: towns on the frame (twelve sites, plus a hamlet on each face from 1×), the panels under the ground (hidden by default), each region's flowers, the painter and the plants (Painting the shell, below), and a Look section in the pause menu that switches the sky, the band, how much the panels show, and the old ground against the new.
- proposedOne shell map with two grids, panels and texels, and shapes written as a radius for every direction. This page sets them out.
- proposedTwelve sites from an icosahedron, poles at an opposite pair, a band around the middle.
- decidedThe sky is blue. The warm haze stays as an alternative.
- openWhat the band looks like, to be tried in the game. Whether worlds change every match or rotate as named seeds.
The shell map
Every layer is drawn on one map: the unit sphere, like a globe's latitude and longitude. It doesn't depend on the world's shape. The shape is the last step, which places each point of the map on the ground. So when the world morphs, everything drawn on the map, from the field to the flowers to the towns, moves with the ground.
The map carries two grids.
- Panels, for structure. A Goldberg tiling: hexagons and exactly twelve pentagons, made by cutting each face of an icosahedron into a triangular grid and taking the dual. The panels are nearly equal, there are no poles where cells crowd together, and the twelve pentagons fall where the frame wants its twelve sites. They come out at about half a hexagon's size, which suits a site's plaza. Each panel holds a charge, a height, a region, a building or none, and how much of it shows. At about 10 m across there are 1,442 panels at 0.65× (frequency 12) and 5,762 at full size (frequency 24).
- Texels, for detail. A cube map: six square grids that the graphics card reads by direction and blends across their edges without a seam. It holds what is finer than a panel: flower density and colour, grass height, paths, the band. At six faces of 1024 × 1024, each texel covers about 15 cm of ground at 0.65×.
- Panels drawn
- 642
- Ground area
- 1.00 × sphere
- Hexagon size
- –
- Hexagon stretch
- –
- Pull, spare unused
- 22.0 m/s²
- Fits the spare
- yes
Any shape
A shape is a radius for every direction: from the centre, the ground lies at distance r(u) along each direction u. The sphere's radius is the same everywhere. Lens and Rama are ellipsoids. A waist pinches an ellipsoid at the middle, and a free shape adds soft bulges and dents. Anything written as a signed distance field works too: step out from the centre until you meet the surface.
- One rule: every point of the ground can be seen from the centre. That's what a radius for every direction means, and it's also what the Lantern needs to light the whole ground. A ring or an overhang would need a different map, later.
- A morph blends two radius functions. The panels, the field, the flowers and the towns all follow, because they live on the map.
- On a long shape, the sphere's panels can't keep both their size and their shape. Projected straight out from the centre, they stay round but not even: on Rama the hexagons range from 0.5 to 2.2 times the mean. Evening the sizes moves each panel toward the middle of its own patch of ground, but the sphere's tiling has a fixed number of rows, and a long shape needs more. So even sizes means stretched hexagons, up to 1.6 times longer than wide on Rama and 2.6 on the waist. The slider in the figure blends the two. A near-round shape like the Lens has a sweet spot about halfway; long ones don't.
- The proper fix is to tile each shape on its own surface. Lay panels out on the real ground at a fixed size, so a longer world simply has more rows. A morph then adds and removes panels, which is the spare ground unfolding from the seams. Whatever has to survive a morph, like the flowers and the field, lives on the continuous shell map, and a new panel takes its values from there. A first test gave rounder hexagons, but about one panel in seven had five or seven sides, so it needs a careful remesher in the engine.
- The seams take the growth. A shape with more ground has bigger panels. Up to 1.5 times the sphere's area, the spare ground folded in the hull opens along the seams; beyond that, the pull drops.
- The field follows the ground on any shape. Pull depends on height above the nearest ground and points at it. On a general shape both come from the distance field. Each panel's charge then scales its own pull.
The layers
Ian McHarg's method stacks a landscape in layers and reads them together. Here each layer is drawn on the same shell map, so any layer can change without the others falling out of step.
| Layer | Holds | What it can do in play | |
|---|---|---|---|
| 1 | Shape | The form and its panels, with the spare ground folded in the hull. | Morphs. A panel tilted to 90° becomes a wall you can walk up, since the pull follows the panel. Panels rising into a ridge or sinking into a ditch. |
| 2 | Field | Each panel's charge, the falloff height, the events moving through. | Heavy and light ground, 16 to 33 m/s². Sweeps, lulls, tides. The ground going light before an event. |
| 3 | Frame | The poles, the band, the sites and their regions, the opposite pairs. | The zone as a set of regions. Gates between opposite sites. The director choosing where. |
| 4 | Relief | Low hills, knolls, ridges, hollows and sunken edges. | Cover from nearby players. Hills you go over or around. Rock that a shape event can raise or flatten. |
| 5 | Ground cover | Grass, flower drifts, field patches, the band, the few trees. | The field made visible: grass leaning, petals lifting, the painted wave. Each region's character. |
| 6 | Routes | Paths between the sites, wider where they arrive. | Bots' routes. The places where routes cross, which is where fights happen. A map you can read overhead. |
| 7 | Places | Towns as blocks for now, spires, launch pads and gates. | Roofs for cover, high ground, launches, gates, loot. |
| 8 | Sky | Haze, clouds, drifters and the Lantern. | Long sightlines softened. Stepping stones and moving cover in the void. Shade under drifters. Time of day. |
The director plays the layers during a match: morphs move the shape, events move the field, the zone moves the frame, light and weather move the sky, and the ground cover answers. A new event idea starts from the question of which layer moves.
Building a world
A seed and a preset go in; a world comes out, or the seed is thrown away and the next one tried.
| Step | Uses | Gives | |
|---|---|---|---|
| 1 | Shape | The preset and the world's size | A radius for every direction |
| 2 | Panels | A frequency from the size, about R ÷ 8 | The Goldberg tiling, evened out on the shape |
| 3 | Frame | The tiling turned by the seed | North and south at an opposite pair of pentagons, ten sites in two rings, the band between them, a region round each site |
| 4 | Field | The charge budget | A charge on every panel, 22 m/s² to start |
| 5 | Relief | Noise shaped by the frame | Panel heights, flattened under sites and paths, hills placed where routes would cross open ground |
| 6 | Routes | The thirty sides of the icosahedron | Paths over the panels between neighbouring sites, bent a little, wider where they arrive; crossings marked |
| 7 | Ground cover | Each region's flowers, a slow drift from north to south | Flowers, grass and fields in the texels; the band; trees only where they do a job |
| 8 | Places | The sites and an allowance of spires and launches | Blocks on the panels round each site, spires, pads, gates between opposite sites |
| 9 | Sky | The haze setting and the seed | Clouds, drifters, shade under them |
| 10 | Checks | Everything above | Keep the seed, or throw it away |
The checks are the analysis layer. Every site can be reached three ways, by ground, by launch and through the void. No open spot is seen by most of the shell without cover nearby. Neighbouring sites sit within a walk the zone allows. Launch arcs clear the drifters and the Lantern.
With an icosahedron the twelve sites sit 108 m apart along the ground at 0.65× and 221 m apart at full size. The ring sites lie 26.6° north and south of the band, so every route between the rings crosses it once: ten crossings, which is where cover goes.
Showing and hiding the panels
The panels are the world's structure, not its look. Like the tiles of any terrain system, they carry the layers and stay out of sight; the dream shows them only where something uses them, panel by panel. Each panel has a value from 0 to 1 for how much it shows, with a finer mask in the texels. The figure shows them so you can see the tiling; its slider moves the value everywhere at once.
- Hidden, the default: grass, flowers and relief run straight across the seams, and the ground reads as one meadow. Noise and flower drifts are continuous across panels, so a hidden seam leaves no trace.
- Disguised: the seams become the meadow's own edges, such as field boundaries, hedgerows and the border of a patch of flowers. The patchwork of fields seen overhead in the art can be groups of panels.
- Shown: fine seams and a slight bevel, so the panels read as made. These are the panels that tilt, rise or turn over.
- Shown by the director: just before an event, the seams brighten across the panels it will use, then fade once it has passed.
Seeing and cover
Someone at angular distance θ from you on the shell sees you from θ/2 above your ground, since a chord meets the circle at half the arc it cuts off. Nearby players look along the ground, and far ones look down from high; someone right across the world looks straight down. So walls and hedges stop the near ones, and roofs and canopy stop the far ones.
Shooting across the world stays part of the game. The haze softens the far side but doesn't hide it: in the Hollow a target 120° away keeps about half its contrast and one directly opposite about a fifth (the Game page has the numbers). The blue sky changes their colour, not their contrast. And cover is local. Roofs and canopy belong to towns and groves, and most of the meadow is open, so crossing it means being seen from the whole far side. That's the risk the cover is there to price.
From the research on shipped battle royales and arena maps:
- Count first, then space. About one named place per squad, with two or three unnamed outposts each. Even density matters more than the total.
- Cover where routes cross, strongholds off busy junctions, and three ways up to every high place.
- Launches few, loud and paired, so nobody arrives at a fight unheard.
- Surprise is local. The far side is always in view, so mystery comes from what's near: a knoll, a bend in a path, a patch of tall flowers.
- Author a north. Distinct poles, one band, and landmarks whose sides differ at the places where players choose.
Haze as sky
A blue sky makes the void read as sky and the far side read as distant, the way painters show distance. That's a real depth cue: it helps players judge distance and keep their bearings. The hero picture on Inside the Shell does it, with the ground overhead still green and pale blue in between. Inside a dream world it needs no physical excuse.
The blue haze is pale and gentle. It sits mostly in a core around the Heart, so it shows most across the middle of the far side and blends into the Heart's glow, while the ground overhead stays green. It has the same amount of haze as the warm one, so targets across the shell are just as visible.
A stronger blue has a cost. Haze only colours what it also hides: enough blue haze to colour the whole far side would leave a target 120° away with 29% of its contrast instead of 54%, which costs the fights across the shell. "Far blue" in the pause menu tries another way: distant things shift toward blue but keep their lightness, so nobody gets harder to see. It's off by default; at full strength the whole far side turns sky blue.
The warm haze stays in the pause menu, perhaps as the director's late-day light.


Painting the shell
The look to reach is the hero picture on Inside the Shell: big painted flowers and strands of grass at your feet, brush strokes and drifts of colour in the middle distance, and a painted map of fields, paths and round trees overhead. In a hollow world most of the screen is far away, and there's no horizon to hide it behind. So the ground is painted once and read cheaply, and real plants grow only in a small ring around you.
- The painter. When a world is built, one shader paints the shell map into two cube maps. The ground map holds the grass swathes and the band, and in its alpha where plants may grow: nothing under buildings and pads, or on the path. The flower map holds where flowers grow and what kind. It runs again only when a layer under it changes. A morph needs no new painting, because the maps are kept by direction, not by shape.
- The ground. Each pixel reads a texel from each map, adds a little grain and faint brush strokes along the wind, then the light and the haze.
- The plants. Grass blades within 14 m and flowers within 22 m, made on the graphics card from a grid on the cube's faces. A plant's place comes from its cell, so plants stay put as you move and the CPU keeps nothing per plant. Blades take the ground map's colour, so where their ring ends they sink into ground of the same colour.
- The flowers grow in clumps, a metre or two across, one kind to a clump: the region's own, white daisies or small yellow ones. Clumps are commoner and bigger in the drifts, with open grass and the odd single flower between. Beyond the flower ring, the ground paints the same clumps as dabs of colour, so the drifts still read from far away.
The Heart helps. It sits at the centre and never moves, so the light on every spot never changes, and the shadows of trees and buildings fall straight beneath them. They can be painted in once. Only moving things need a shadow drawn live.


| Shader | Runs | Reads | Draws |
|---|---|---|---|
| Painter | Once per world, and on events that change the ground | Frame, relief, ground cover, routes, places | The ground map (colour, where plants may grow) and the flower map (where flowers grow, and what kind) |
| Ground | Every frame | Both maps, shape (panels), field, sky | The meadow |
| Grass and flowers | Every frame, near you | Shape, both maps, field | Plants at your feet |
| Trees and buildings | Every frame | Places, ground cover | Soft-shaded blobs and blocks, flat stand-ins far away |
| Sky | Every frame | Sky | The haze (inside every shader), clouds, the Heart's glow |
The field is where the look turns into play. The wind, how far grass leans and which way the strokes run all come from it, so a heavy patch can flatten the grass and a sweep can swirl the strokes like the vortex in the picture, at almost no cost.
The research behind this, and where it goes next, is on The look. What to avoid:
- Full-screen painterly filters, the Kuwahara kind. They cost dozens of samples per pixel and smear small, far-off players into blobs, which hurts the shooting. Painterliness comes from what's painted instead.
- Live shadows for things that never move.
- Grass geometry past about 20 m, where a blade is thinner than a pixel and brush strokes read the same.
- Blended transparency on plants. Cut-outs with alpha-to-coverage need no sorting.
Next
The frame, the panels, the regions' flowers, the band takes, the haze switch, the painter and the plants are in the prototype. Still to come:
- Measure the painter and plants on real hardware, with the pause menu's frame readout, against the live ground.
- Choose a band from the takes in the pause menu.
- More for the painter: fields, paths and flower beds, trees with their shadows painted in, flat clouds (in order on The look).
- Pole landmarks, so north and south differ at a glance, not only by their flowers.
- Routes: paths between neighbouring towns, crossing the band.
- Relief: knolls and hollows, flattened under towns and paths.
- A remesher that tiles each shape on its own surface, so long shapes keep round panels.
- Then the field as play: heavy and light patches, and a panel that tilts into a wall you can walk.
References
Tiling a sphere
- Goldberg, M. (1937). A class of multi-symmetric polyhedra. Tohoku Math. J. 43, 104–108.
- Caspar, D. L. D. and Klug, A. (1962). Physical principles in the construction of regular viruses. Cold Spring Harb. Symp. Quant. Biol. 27, 1–24. Why a sphere of hexagons needs exactly twelve pentagons.
- Wales, D. J. et al. (2006). Structure and dynamics of spherical crystals characterized for the Thomson problem. Phys. Rev. B 74, 212101. PDF
- Uber Technologies. H3, a hexagonal hierarchical index on an icosahedron. h3geo.org
- Górski, K. M. et al. (2005). HEALPix: a framework for high-resolution discretization and fast analysis of data distributed on the sphere. Astrophys. J. 622, 759. arXiv:astro-ph/0409513 An equal-area alternative for the data grid.
- Quilez, I. Distance functions. iquilezles.org
Landscape and level design
- McHarg, I. (1969). Design with Nature. Natural History Press.
- Lynch, K. (1960). The Image of the City. MIT Press.
- Christaller, W. (1933). Die zentralen Orte in Süddeutschland. Summary
- Martin, P. (2014). Visibility and accessibility in Splinter Cell levels. Entertainment Computing 5(1). Repository
- Vinson, N. G. (1999). Design guidelines for landmarks to support navigation in virtual environments. CHI '99. arXiv:cs/0304001
- Respawn. Kings Canyon and Olympus map updates. Kings Canyon, Olympus
- Epic Games (2018). Fortnite map update deep dive. fortnite.com
- Landscape research notes, with all sources for this page. with.md