Checkpoint

Checkpoint

Custom Vulkan Engine with Qt-Powered Editor

Checkpoint is a custom game engine designed for creating highly-optimized 3D games. It provides tools and modules for modern and efficient rendering, physics simulation and more. It is a highly-customizable platform that allows users to create their own systems and packages that fit their needs.

It is a project I am working on alone as it is my personal training ground for learning engine development, it is supposed to showcase my skills and improvements and finally I will be presenting it as my final project at Creajeux.

Checkpoint's development is
Ongoing

Development started in November 2024

Checkpoint is made using

  • C++
  • Vulkan
  • Slang
  • Qt
  • CMake
  • Git
  • GitHub
  • Visual Studio
06 Feb 2024
Started learning Vulkan
27 Jul 2024
First Milestone: Rendering of a Tesselated Terrain
16 Nov 2024
Started working on Checkpoint
05 Jun 2026
Expected presentation date in front of a jury
Now
#

Main features

  • Entity-Component-System Architecture

    Entity-Component-System Architecture

    Checkpoint is built with speed and efficiency in mind, using an Entity-Component-System design was my first thought when architecting the engine. Leveraging the power of multi-threading and data-oriented design, I aimed to create a system that can scale with the complexity of modern games and the players' ever-growing expectations.

  • Dynamic Material System

    Dynamic Material System

    Checkpoint features a Dynamic Material System that allows for real-time adjustments to material properties, enabling artists to create stunning visuals and fine-tune their work without the need for recompilation. Thanks to Slang's reflection API, any change made to the shader code is instantly compiled and integrated in the editor, providing a seamless workflow for both artists and developers.

  • Package Manager [WIP]

    Package Manager [WIP]

    Checkpoint includes a built-in Package Manager that allows developers to easily integrate and manage third-party libraries and tools. "Don't pay for what you don't need" is the credo behind it, Checkpoint aims to provide a fully modular architecture that promotes code reuse and simplifies dependency management. Its second purpose is to speed up the loading and build times of projects by only including the necessary components.

#

What I learned

Hard skills

  • Game engine design: architecture, rendering, physics
  • Low-level programming: C++, Vulkan, Assembly
  • Software architecture and design patterns
  • Performance optimization (CPU and GPU): profiling, memory management, SIMD
  • Mathematics: matrices, quaternions, ...
  • Project and time management: task prioritization

Soft skills

  • Performance-focused mindset: constantly seeking ways to improve efficiency and effectiveness
  • Attention to detail: ensuring high-quality work and minimizing errors
  • Self-motivation: pursuing goals with passion and determination
  • Resilience: overcoming challenges and setbacks with a positive attitude

Personal growth

Working on Checkpoint was an unexpected but very welcomed development in my personal and professional growth. I joined Creajeux with the goal of becoming a gameplay programmer, but shifted towards engine development after discussing with another student who was already working on an engine of his own.

This project allowed me to discover a new passion (rendering, engine architecture) while strengthening the interest I already had in low-level programming and performance optimization.

It is, to this day, the most challenging project I have ever worked on, and I am very proud of the progress I have made so far. I cannot wait to see where this project will take me in the future.

#

Roadmap

Present and Future

2025-Q4

  • Project Split & Core Refactor (Runtime / Editor / Tools)

    Oct 22 - Nov 15MUST
  • Render Logic Split (Runtime / Editor)

    Nov 16 - Dec 5MUST
  • Upgrade to C++20 Modules

    Dec 6 - Dec 20MUST
  • ECS Multithreading & Scheduling

    Dec 21, 2025 - Jan 20, 2026MUST

2026-Q1

  • Editor Scripting System

    Jan 21 - Feb 20MUST
  • Package Manager System

    Feb 21 - Mar 20MUST
  • Slang Helper Modules

    Mar 21 - Mar 31SHOULD

2026-Q2

  • Final Polish & Presentation Prep

    May 1 - May 31MUST
  • Virtual Geometry Integration

    Apr 1 - Apr 20SHOULD
  • Editor QoL & Cleanup

    Apr 21 - Apr 30SHOULD

No Date

  • Sample Tools via Package Manager

    COULD
  • Material Graph Editor

    WISH