Blog
-
[proto-ecs] The Render Foundation 2024-12-22In this article, I'll share how we structured and implemented the Render API, and how the render thread integrates into proto-ecs's architecture and entity system. We use a dedicated render thread, PODs to simplify resource management and double buffering.
-
[proto-ecs] Entity Allocator 2024-05-13A thorough explanation of how we implemented entity allocation in Rust. We start with simple Generational Indices, and we explore several interesting Rust features to implement a complete entity allocator!
-
[proto-ecs] Data types registration in Rust 2024-02-05When you write a game engine, you usually want to allow users to create custom data types to implement behavior. And sometimes you need some sort of reflection system to collect some metadata about those new data types. In languages with limited reflection features like Rust and C++, this can be quite a challenge. In this article, I will explain how we approached this problem using macros in Rust in proto-ecs
-
[proto-ecs] Introduction 2024-01-05In this post, I introduce the core concepts of our Rust Game Engine, proto-ecs. We will learn about the core ideas that power its object model.
-
A Weird Rust Engine: proto-ecs 2024-01-04In this project, I'm trying to implement a multithreaded game engine in Rust following Bobby Angelov's object model. This is the index post where I keep track of our progress!
-
torus.cpp 2023-07-30In this article I explain in great detail my own implementation of Andy Sloane's donut.c . Here I go over the maths, code, and everything you need to know to implement a basic terminal render.
Theme Moonwalk