Green Fern
Green Fern

Voxel engine

team build raytraced, destructable voxel engine with dynamic raytraced lighting

Project overview

This document outlines my contributions and key experiences during an 8-week team project to develop a multi-platform Voxel engine, renderer, and interactive editor from the ground up.

Scope:

This was a team project consisting of 7 programmers. It was build mostly from scratch in 8 weeks time, with 4 sprints lasting 2 weeks each. This project included making an engine, renderer, editor and small demo. Implementing this engine involved combining and improving our previous efforts last block into one engine/editor.

Tech Stack & Workflow:
  • Languages & APIs: C++, OpenGL, proprietary PS5 SDK

  • Shaders: GLSL & PS5 shading language

  • Build & Tools: Visual Studio & MSBuild, GitHub (version control, automatic deployment, and Projects boards), RenderDoc and Nsight graphics/systems ( profiling).

  • Collaboration: Agile sprints and standups via Discord; code reviews and issue‑tracking on GitHub

Key team Achievements:
  • 60 FPS (soft target) / 30 FPS (hard) achieved on PS5 devkit, 60-120 FPS on pc.

  • 256³ fully destructable voxel grid with multiple smaller grids for enemies and object

  • Modular Engine Design: Consolidated prior semester prototypes into a unified C++ core with clean subsystem boundaries (graphics, input, resource management, ECS) using a very lightweight existing framework.

  • Platform abstraction: as the engine is multi-platform supporting both pc and ps5 we have abstracted our platform code to allow for more seamless deployment on both platforms.

  • Real‑Time Raymarched renderer: Implementing raymarched voxel rendering, raymarched shadows, and raymarched ambient occlusion,

  • Procedural generation: featuring full procedural terrain generation featuring different types of foliage, ores and materials.

  • Dynamic world manipulation: full in game world manipulation in the style of Minecraft.

  • Interactive Editor: Developed an in‑engine editor with scene-graph manipulation, support to extensively alter our procedural terrain generation

  • Demo Showcase: Assembled a small demo level demonstrating the highlights of our engine.



My Role, contributions, and responsibilities

during the course of this project I was responsible for and took the lead in most of the following tasks:

  • Architected and implemented a 2 stage (course and sub-voxel) voxel traversal algorithm for our renderer.

  • Led the implementation of our rendering pipeline on the PC, including the primary voxel rendering, sub-voxel rendering, texture support, implementing acceleration structures for our voxel storage, raymarched shadows and other visual effects like fog.

  • Architected and Implemented the Terrain manipulation to work at 60 fps at a fixed cost regardless of manipulation size. Implemented the coupling of the terrain manipulation and our inventory system.

  • Collaborated on and contributed to ps5 support, whilst another teammate was primarily responsible for implementing all our ps5 specific code I did work partly on implementing support for ps5.


  • Technical details of implemented features by me

  • Other storage/traversal techniques tried

  • Challenges