Atomic orbitals vizualisation

WebGL-based visualization of atomic orbitals using volumetric raymarching.

It can show all orbitals from 1s to 4f as either a density cloud or a solid isosurface. I'm quite proud of how this thing turned out :)



WebGPU demo

A demo WebGPU project that renders the Sponza scene with shadows, several light sources, volumetric fires, simulated cloth and water.

I made it mostly to get familiar with WebGPU and to see how usable and stable the API is.



Costa Verde Transport Department

A road building & traffic simulation game I've released in 2023. It's my first commercial game project, and the first big enough released game. A lot of things went wrong during development, and I'm not happy with the final result, but at least I've learned a lot. The game still managed to find a thankful audience, though :)

You can watch devlogs about it on my YouTube channel.



Particle simulator

A particle simulator supporting charges, gravity, springs, and external force fields. It's quite simple but powerful and fun to play with.

It uses a simple JSON format to serialize the simulation state, so you can generate your own simulations to feed into it, or save the simulation results and load them in your own tool.

The simulator's code is open-sourced here.



Quantum Chemistry Done Wrong

An extremely introductory book on quantum chemistry, with a fairly low amount of prerequisite knowledge required (mostly linear algebra & Python).

It gradually builds up a simple framework for solving quantum mechanical problems, explaining what's going on along the way. All the resulting code is available in the same repository, and all the nasty integral computations are already done for you.



OpenGL Loader Generator

Heavily influenced by (now obsolete) glLoadGen, a python script that takes a simple configuration file and produces an OpenGL loader, i.e. a pair of C++ header & source files that contain all OpenGL constants & function definitions for the specified OpenGL version, and the routines for loading them.

It is highly configurable, and supports different OpenGL-based APIs, versions, extensions, and even code styles :)



OBJ Voxelizer

A tool that converts 3D models in Wavefront OBJ format to a 3D RGBA texture, with the alpha channel containing the volume of intersection of the object with this voxel. Useful for e.g. volume rendering.