Shadowplay

with No Comments

In this post, I thought I’d talk a little bit about our approach to shadows in Nome. Shadows don’t (currently!) have any direct effect on gameplay – so it might seem misguided to give them too much attention early on in the game’s development. However, they do serve some purpose: combined with other dynamic lighting effects, fog etc, they give the player information about the environment around them – they help place relative position of objects in the scene, the time of day, and current weather conditions, for example.

Consider the following image which shows the Nome sprite – a … Read the rest

Enter Sandman

with No Comments

In the last post I mentioned that I used this Turbulence Library to create noise textures on the GPU which are then used to create heightmaps of the terrain. It’s a great library with lots of common noise functions – Perlin, Voronoi, Simplex etc. which are commonly used to generate realistic looking terrain from jagged mountains to rolling plains.

Rather than just using Perlin noise, which is perhaps the most well-known noise function, I’ve been experimenting with adding some other variations and layering additional functions to try to create unique terrain profiles for each of the environments in Nome.

For … Read the rest

I Got 99 Problems

with No Comments

This is likely to be an incredibly esoteric post of interest to very few people, but I’ve been wrestling with some really specific technical problems today and I *think* I’ve found the solutions, so I thought I’d document them here for my own benefit. If someone in the future happens to come across this post and it helps them solve the same problems, then all the better!

1.) Don’t rely on a “Fallback” shader to provide shadowcasting pass
Nome uses a heavily-customised sprite shader which, amongst other things accounts for normal maps, shadows and fog – all things not normally … Read the rest