Hibou Engine

A lightweight C++20 & D3D11 engine focused on third-person games. Built to learn engine programming fundamentals.

Features/Goals

Learning-Driven Project

Hibou Engine is a personal learning project. Even though this page describes several systems and goals, it is not intended to become a commercial engine. I use it as a long-term sandbox to understand in depth how game engines work — from rendering and architecture to tools and workflows.

Direct3D 11 renderer

Direct3D 11 Rendering

Modern rendering architecture built on Direct3D 11 with explicit control over swap chains, render targets, depth buffers, and GPU resources for predictable performance and clear data flow.

Entity Component System

Entity-Component System (ECS)

Data-oriented design that decouples gameplay logic and scales cleanly. Systems iterate efficiently over tightly-packed components for cache-friendly execution.

Input system

Integrated Input

Unified input layer with action mapping for keyboard, mouse, and gamepads. Events are fed into gameplay systems without engine-specific coupling.

SDL3 windowing

SDL3 Windowing

Cross-platform window creation and event pump via SDL3. The window system is thin and replaceable, keeping the engine portable and focused on rendering + gameplay.

Rendering pipeline

Modular Render Pipeline

Clear stages for frame setup, pass scheduling, resource management, drawing, and post-processing. Built to evolve into a frame-graph without breaking gameplay code.

Motivations

Learn by Building

Engine programming forces understanding of graphics APIs, memory, synchronization, and data layouts. Hibou exists as a living lab for those fundamentals.

Total Control

From input to GPU submission, every layer is inspectable and modifiable. That ownership enables better debugging, profiling, and trade-off decisions.

Lean & Efficient

Minimal abstractions, small binaries, and pragmatic features. The goal is shipping features that matter to gameplay first.

Third-Person Focus

Priorities, samples, and the render feature set are optimized for third-person projects (characters, cameras, animation, environments).

Roadmap

Graphics API

  • After a deep understanding of D3D11, my future goal is the implementation of D3D12.

Core Systems

  • Particle system (CPU & GPU)
  • Physics integration
  • Editor tooling
  • Audio system
  • Robust documentation
  • Profiling & telemetry
  • Cutscene system
  • AI framework (BT / FSM)

Assets & IO

  • FBX / glTF / GLB / USD import
  • Material & shader graph authoring
  • Cooked asset pipeline & hot-reload

Shading

  • Water / wet surfaces / snow
  • Hair, skin, cloth & fabric
  • Fire / smoke / volumetrics
  • Deferred + clustered forward
  • Temporal AA & upscaling

Compute & GPU

  • GPU particles
  • Fluid & cloth simulation
  • Hair simulation
  • Advanced lighting experiments

Platforms

  • Better Windows tooling
  • Additional platform support

Contact

Based in Québec City, QC, Canada Allowed to work in Canada