-
Software Development
Using generics for type-safe and type-specific identifiers
After the slightly philosophical diversion of last week’s post, today I would like to present a few more technical ideas…
Read More » -
Software Development
Foolproofing code, and incentives
After my post on accessing game objects by unique ids last week, I was asked whether it was not potentially…
Read More » -
Software Development
Accessing game objects by unique ids
Every game keeps its game object in one or more simple collections. These are used for enumerating the objects every…
Read More » -
Software Development
Designing a shader loading and management data structure
Last week we looked at how we can use the builder pattern to build shader programs out of individual shaders.…
Read More » -
Software Development
Linking shader programs using the builder pattern
This post is the first in a series on design patterns in game programming. Design patterns play an important role…
Read More » -
.NET
Multi-threaded exception handling
Last week we explored the possibilities of using multi-threading to create animated – or even interactive – loading screens, and…
Read More » -
.NET
Using multi-threading to animate and speed up loading screens
One feature that almost all games have in common is loading screens. Many small games can get away with a…
Read More » -
.NET
Scheduling cross-threaded tasks using .Net’s BlockingCollection
Concurrency has always been a complicated aspect of computer science. With modern hardware increasing not only in speed but also…
Read More » -
.NET
Serialisation – JSON in C#, using Json.NET
Last week we compared a number of different data-interchange formats and I explained why my current favourite is JSON. JSON’s…
Read More » -
.NET
Random elements, subsets and shuffling collections – LINQ style
LINQ was a major part of the release of .Net Framework 3.5, and has since been one of the most…
Read More »