
Day 19: PACKSHIFT
Packaging Is a Compiled Surface
I designed and built an interactive packaging experience where mandatory content becomes physical pressure.
The journey starts with the real 56 mm width of a carton, moves through a spatial puzzle and hydraulic press, and ends with the same package exhibited in a museum with the history of the run preserved on it.
Behind the public game is a deeper spatial compiler built with Blender, Three.js and React Three Fiber.

PACKSHIFT museum hero
The idea
Packaging often looks like a graphic-design problem. But every claim, language, warning, barcode and data mark consumes real physical space.
I wanted to make that invisible negotiation something people could see and feel. So I built PACKSHIFT.
Start with the real constraint
The experience opens with the actual front face of the carton: 56 × 130 mm. Mandatory copy begins filling that surface before the player even starts.
This is all the space you have.
From there, the same box enters a five-level spatial puzzle where the player has to distribute requirements across limited package surfaces.

Actual size, empty

Actual size, filled

Actual size sequence
Make optimization physical
At level five, the package enters a hydraulic press. As the player makes the box smaller, the ram descends with it.
The information does not disappear. The available surface does.
Eventually, a requirement is rejected: CRACK! The optimization problem becomes a physical consequence.

56 mm handoff

Press crack
The package remembers
Winning does not lead to a normal score screen. The same carton enters the Museum of Mandatory Things, on a white pedestal under a gallery spotlight.
The exhibit records what happened during the run: overloads, rejected labels, press cracks and the smallest size reached. The final object becomes more than the solution. It remembers the negotiation that produced it.

Recovery sequence
The system underneath
The public game is only one layer. PACKSHIFT also includes a professional spatial compiler where the same package can be:
inspected by surface pressure
opened and decomposed
unfolded into a dieline
rebalanced across package faces
refolded into a resolved form
Blender provides the physical packaging master, internal components, folds and runtime anchors. Three.js and React Three Fiber handle live browser interaction.
CONSTRAINT → PRESSURE → COLLISION → REFLOW → VALID FORM
Blender as product infrastructure
Blender is not only used for renders. The master contains the carton structure, flaps, hinges, insert, jar, cap, seal and leaflet. That asset is exported as GLB and used directly by the live product.
Blender owns physical structure. The browser owns interaction and consequence.
The final experience
PACKSHIFT became two connected experiences:
Public: Actual Size → Puzzle → Hydraulic Press → Museum
Professional: Pressure → Decomposition → Dieline → Redistribution → Refold
One makes the constraint intuitive. The other reveals the system underneath.
Result
PACKSHIFT evolved from a 3D packaging experiment into a game, spatial compiler and visual story about finite surfaces.
SEE THE LIMIT → FEEL THE PRESSURE → BREAK THE SYSTEM → RECOVER THE FORM → EXHIBIT THE RESULT → REVEAL THE COMPILER UNDERNEATH
The most important realization was simple: the package should not simply display the result. It should remember the negotiation.
Surfaces are finite. Requirements compete for them. Every decision leaves a consequence.
Packaging is not a file. It is a compiled surface.
0 likes · 9 views · Oct 2, 2026
I designed and built an interactive packaging experience where mandatory content becomes physical pressure, from a real 56 mm carton to a hydraulic press and museum artifact.