Roche Fusion Technical Recollection 3

In this third instalment of Twitter-powered reminiscence we will continue discussing more and more of the different systems I developed for Roche Fusion in the last few months of the game’s development.

We will focus mostly on their technical and graphical aspects, since that is my area of expertise, and the purpose of this series of posts.

Continue reading →

Localised Crepuscular Rays

Crepuscular rays, volumetric rays, or god rays have become a common effect in games. They are used especially in first and third person games – where the player can easily look at the sky – to give the sun, moon, or other bright light sources additional impact and create atmosphere.

Depending on how the effect is used it can emphasize the hot humidity of a rain forest, the creepiness of a foggy swamp, or the desolation of a post-apocalyptic scene.

While there are multiple ways to achieve this and similar effects, the method we will look at in particular is the approximation of volumetric light scattering as a post-process using screen-space ray marching.

In this article we will quickly step through the idea behind this algorithm, and how it is commonly used. We will then show how we can easily expand from there to create a solution that works well with multiple light sources, including some source code and images.

Continue reading →

Post Processing: Pixelation

Today I want to delve a bit further into graphics programming and look into one specific effect we used in Roche Fusion: Pixelation.

We use the effect in the game as a visual queue for when the player takes damage and their health falls to dangerous levels.

Roche Fusion screenshot

Specifically, the post processing effect we apply pixelates the edges of the screen significantly, while leaving the center, and to some degree the bottom corners mostly untouched.

This allows the player to still continue playing, and to inspect their HUD, but it gives a clear and unmistakable indication of danger.

Of course, the effect could also be used for other purposes, such as transitions between levels, or even a major part of the art style.

Continue reading →