Shapez 2 in Unity: Rendering Infinite Factories with 3D Minimalism

Published on May 24, 2026 | Translated from Spanish

Shapez 2's leap into the third dimension is not just aesthetic; it's a technical challenge of real-time data management. Unlike its 2D predecessor, this sequel abandons flat sprites to build a volumetric world where every piece and conveyor belt must coexist without map boundaries. The key lies in a minimalist pipeline that prioritizes readability over detail, using Unity as the base engine to orchestrate massive flows of information without collapsing the framerate. 🚀

Shapez 2 in Unity rendering minimalist 3D factories with conveyor belts and modular pieces without map boundaries

Optimization through GPU Instancing and Dynamic LOD ⚙️

To handle thousands of simultaneous objects, Shapez 2 aggressively employs GPU Instancing. Instead of drawing each gear or conveyor belt as an independent entity, the engine groups identical instances into a single render batch, drastically reducing calls to the graphics API. Additionally, a Level of Detail (LOD) system is implemented that simplifies the geometry of distant pieces to simple cubes or spheres, while particles (representing raw material flows) are generated using GPU-based particle systems, avoiding CPU overhead. This approach allows a factory with tens of thousands of components to run as smoothly as a small factory.

Lessons from the 2D to 3D leap in simulation 🧠

The transition from Shapez to its sequel demonstrates that technical minimalism is a virtue in simulation game development. While the first title relied on 2D tiles and a fixed orthographic camera to hide complexity, Shapez 2 exposes the true scale of production, forcing the team to optimize from the asset pipeline. The lesson for other developers is clear: when content is procedurally generated and massive, geometric simplification and intelligent use of instances are not optional, but the foundation of technical viability.

How did the Shapez 2 team implement a minimalist rendering system in Unity to manage the representation of infinite factories without compromising real-time performance?

(PS: a game developer is someone who spends 1000 hours making a game that people complete in 2)