Game Engine Devlog Part 6 - Game Primitives

Now that I have an engine and assets, the next step is actually making the game. Due to the practically infinite map size, I had to hit the books before developing the below proof of concept which shows when a house can reach another house, and the data structures which allow it. It also contains a sample of the background music I've created:

Data Structures

The vision I have for how the residents in this game will reach services is either by walking or riding public transport, so they will reach destinations by being within range by-road, as opposed to as the crow flies. I have implemented a red-black tree which stores X,Y co-ordinates of all entities to allow efficient operations on a large map, and a transport network graph which links adjacent roads and buildings on the graph, these are both visualised in the above video. I inserted a proof of concept function into the main loop which spams STDOUT when the houses have a route between them. The new road layout tool (ROAD_MODE) also uses the transport system to automatically align the road pieces.

Other developments

I have added a skybox, which is a cube that follows the player and is textured with a tiled image of some clouds I drew on a cubemap.
I've created 75 minutes of background music, I still have sound effects to create.
I have added a lookup table for random number generation and intend to use in the next steps of game logic development, I think the lookup table will be sufficient, if not I will have to implement a more sophisticated pseudo-random number generator.