I’ve been toying around with a new WebGL based project, which began in a fashion that many of my game projects do. Building a level editor, well before doing any of the real design work that should ideally inform such a thing in the first place!

This is my first time building a level editor that actually works at runtime rather than inside the Unity Editor itself, and I’m planning to make it part of the gameplay in some meaningful way. My vague idea is a simple simulation/management type game involving workers in a factory warehouse, with some basic AI and pathfinding, and an objective being to build a layout that optimises for efficiency. Whether this involves rapidly pausing the simulation to make edits or being able to quickly restart the level, I’d like to build the game systems in a highly data driven way that supports this.

What’s currently there is a bare-bones, 3D tile-based level editor using some procedural mesh generation. I had a little fun with ShaderGraph for the cursor grid preview and highlight visuals, but there’s nothing too interactive yet. I will try to update this page as it gets further along!

Controls:

WSADPan camera
Q/ERotate camera
ScrollwheelZoom
Middle MouseGrab Pan Camera
AltFreelook (Has some issues with web)

UI Guide

Annotated UI guide

Build

You can try out a build here.

Source

Check out the source on GitLab here. The code is scrappy and ever-changing and the architecture is a little ill-defined when it comes to the gameplay portion specifically.