Fomenko

The images below are taken from Oleg, our current in-development title, slow-paced exploration game set in a vast, hand-crafted labyrinth. Progress is knowledge-driven: players notice details, connect clues, and chart new routes; akin to games like Outer Wilds, Tunic, Animal Well and The Witness.


Behind these screenshots lies a fully custom engine and toolchain. The editor includes all the expected essentials; user interface, gizmos, and a robust undo/redo system. For content creation, I built a dedicated spline-based wall editor, essential for shaping the labyrinth’s countless structures with precision and rapid iteration, along with a mesh vertex painting tool for fine detail, systems to scatter natural elements like grass, and a terrain editor that ties all these systems into a cohesive whole.


Rendering and engine features include:

  • - Indirect lighting system with light probes
  • - Physically based rendering shading
  • - Cascaded shadow maps
  • - Water reflections
  • - Terrain editor with seamless integration
  • - Post effects including tone mapping and bloom
  • - Thin abstraction layer modeled after Metal for backend portability
  • - Support for both Metal and OpenGL, with future consoles in mind

I've recently added light probes to the engine. Their colors can be baked directly inside the editor, and at runtime, the GPU blends the nearest probes to drive the ambient lighting in our PBR shading. It’s still early in development, but the difference is already nicer: Since the game takes place in a big handcrafted labyrinth, we needed tools that make editing it fast and flexible. I wanted the shapes to feel sinuous, messy, and a bit chaotic, so smooth curves were a must. The tricky part was keeping the vertex count under control — the number of samples can explode quickly — so now the editor automatically adjusts the sample count based on how sharp each corner is. It’s still tunable, but it already works great in practice. We also have a runtime profiler, which is super handy to keep an eye on how the important parts of the code perform. We also have a terrain editor built right into the tools. Here’s a quick look at the painting workflow, it uses a large blend map to mix multiple albedo and normal textures smoothly: Here’s the current game menu. It takes place in a small dedicated scene, centered around our Pierre Wissant stone, a symbol of the mysterious labyrinth that defines the world: Finally, here are a few screenshots that capture the overall mood and atmosphere of the game: