Author: Luke Godfrey

March 11, 2014

The Sprite System

Now that the ECS framework is in place, I will begin implementing some basic systems to use in a game. These systems will include everything necessary to create a simple game, handling input, physics, collisions, and rendering. A developer may choose to implement his own systems if greater complexity or different behavior is required.

Read More

March 10, 2014

Systems and Update Order

When creating a game loop, the order of operations is important. In many engines, it is easy to specify this order because the engine knows about all of its systems. In this engine, however, the engine core knows nothing of its systems.

Read More

March 8, 2014

Frame-Based vs. Time-Based Game Loop

Before we start building, we need to consider how to tackle the game loop. In general, the game loop advances gameplay elements and renders the game world as often as it can. However, there are a number of approaches to the game loop that must be considered first.

Read More

March 7, 2014

High Level Design: Systems

The final pieces of the Entity Component model is systems. Entities are separated out into components, and components are plain old data (POD) classes; systems are where all the game logic happens.

Read More

March 6, 2014

High Level Design: Entities and Components

Inside of each entity is a list of components that describe the entity. Each component is made up of a number of properties, and could be described as a list of mutable data. Components do not know anything about other components or types of components – they only keep track of their own data.

Read More