Robo Instructus devblog

Updates on the development of coding puzzler Robo Instructus


Unlock FX & Even More Snow

I'm a game developer currently working on robot engineering puzzle game Robo Instructus. For my previous posts look here.

This week Robo Instructus’ alpha has new effects for unlock notifications to create the feeling that this data is being decoded as you watch.

Decoding text

The idea is that the robot has just found some new data that’s encoded in some mysterious way. To create this effect text is initially shown coded, something like ∞ӗfflŷǽҺ҄¨έӹUЭсΈụԎÏӍẢĢ—χѠḾŢЯ these characters are then “decoded” from left to right into the readable text.

In the end it’s very similar to a left-to-right reveal that’s a very common text effect, so you could say having the coded characters is a thematic twist on this.

When an unlock dialog is built I also create coded/garbled text to go along with it. These are pseudo random unicode characters selected to have similar width to the original characters. The render logic then draws more of the original and less of the coded as time moves on.

Decoding images

For images I used a fragment shader noise effect creating a blocks of randomised texture data that gradually unveil the true texture.

I used a grid of rectangular noise as real life texture corruption is normally seen as incorrectly decoded blocks.

Improved snow

I also spent a little time trying out some more ideas for the snow effects. Replacing the circles that represented each flake I now have a flake texture. Then how about some random spin on each snow flake? All in the fragment shader of course.

But I still wasn’t happy with the snow at higher speeds as it requires higher frame rates to look right. To mitigate this I wanted to add trails that imply fast movement. I used a post process fragment shader to render a motion blur, you can see it a little in the image above. Adding more extreme blur as the snow speeds up is a nice improvement.

Finally I’ve added the snow shader to the facility view. This is still 100% placeholder, but I thought I may as well blend the look of the screen a little with the current look of the levels.

Putting it together

Looking at the first few seconds of the game I think you can see a quality improvement in how it all comes together.

Comment on reddit | twitter | facebook

All Posts