Nostalgia time! Today I decided to play with Raylib and the Crystal Programming Language.

Technically speaking, the “plasma” effect is just a two variables noise function. Some used Perlin Noise, others the Diamond-square algorithm. A more interesting pattern can be obtained with trigonometrical functions, as explained here.

The interesting part here is the easyness of graphics programming in a Linux environment with a high level, yet performant and statically typed programming language.

The code is straightforward and a simple port of the original ‘C’ source, I got surprised how the Crystal Language is easy to use and produces a quite fast native binary. If you want to check it out, you can find on my github account; in the meantime enjoy the mandatory video/screenshot :)

static:

plasma

video:

p.s. Thanks to Ian Rash who created the awesome bindings!