Procedural City Generator Part 2 - Optimized
Start: April/May 2026
Type: Solo project
Project Duration: Ongoing since Summer 2025
Summary
This project is a Godot-based continuation of a procedural city prototype I originally built in Unity during 2023–2024. I restarted it using my custom Godot Turbo module to test whether the technical foundation for my game could actually work at scale with the CPU forming the largest bottleneck as not much else is being rendered.
The current prototype generates and renders dense city environments at runtime, including facade geometry, prefab-driven lighting data, and large-world support through a floating origin system.
Current performance at 4K resolution on an RTX 4070 Ti Super, Ryzen 5900X, and 64GB DDR4 RAM:
Around 100–300 FPS on average, depending on city density
Dense scenes include many generated buildings and light sources
Runtime memory usage is currently around 1 GB
This is still prototype footage, not a finished art pass. The current phase is about proving technical viability before expanding the project with more people.
Details
The prototype uses Godot’s Forward+ renderer together with RenderServer-based indirect rendering to handle large amounts of generated geometry efficiently.
For lighting, I replaced reliance on SDFGI with a cheaper surface-based approximation using quantized ray samples. The result is more stylized and toon-like, but that fits the project’s intended look while keeping the rendering cost much lower.
The project is currently solo-developed, but it is not intended to stay that way forever. This phase is mainly about building enough of the technical foundation to show that the game’s city rendering and procedural environment systems are feasible.
The codebase has grown to over 200 C++ files (source and header files) spread across 5 modules made, so I use an LLM-assisted workflow to help manage planning and iteration. I use it to discuss system design, turn features into implementation plans, and guide code-generation tools. I still review, test, correct, and integrate the resulting work myself.
I am currently working on crowd systems, improving city density, and building a stronger demo scene. The biggest bottleneck at this stage is asset creation rather than core technology.