Here are some tutorials I've written, mostly to save myself some time by just referring people to my tutorials instead of explaining
the same things over and over again =)
New tutorials will appear when I find something interesting to write about.
Note: check the 'code' page too for some interesting stuff.
"When one teaches, two learn." -- Robert Half
Latest
Graphics for Beginners (using SDL3)
2024 - ongoing
Learning about graphics programming, one pixel at a time. Completely revamped version of
my old graphics / game programming tutorial, now using SDL3.
This expansive tutorial is suitable for people who are learning programming by themselves,
or who know programming but don't know anything about graphics. Programming students may
also use it as additional material for programming courses. Bored of those dry programming
assignments? Maybe it's time to try something fun.
Greatest
z80 assembler tutorial, where I write a complete game from scratch for the zx spectrum in 100% assembler step by step.
Graphics for Beginners (using SDL1)
11.12.2005 - stalled
This 20+-part tutorial is suitable for people who are learning programming by themselves,
or who know programming but don't know anything about graphics. Programming students may
also use it as additional material for programming courses. Bored of those dry programming
assignments? Maybe it's time to try something fun.
- January 9, 2005: added 10 more parts, where I build a simple ball game using SDL step by step.
- February 26, 2005: added 4 more parts, each of which contains one somewhat more complicated effect.
- March 2, 2005: added support for Bloodshed Dev-C++.
- April 4, 2005: added support for Linux and Mac OS X
- August 8, 2005: added support for Visual Studio.NET 2003
Immediate Mode GUIs
30.8.2006 - doneish
Tutorial on what IMGUIs are, and how to implement them. Examples use C and SDL, but the ideas are pretty universal.
Interpolation Tricks
31.1.2009 - done
A short tutorial covering different kinds of interpolations from 0 to 1.
Bit Twiddling
27.10.2006 - done
Sol's take on bit masking, bit manipulation and Boolean algebra, in a nutshell.
GalaXQL
20.11.2005 - 2.0 finished 4.6.2006
An interactive SQL tutorial. As usual, I've found the normal tutorials boring,
so here's something more interesting: alter a whole galaxy using SQL.
Game Programming Course
2010 - done
Course slides to the game programming course I did in fall of 2010.
Potbox - Teensy-LC MIDI controller
2022 - done
Follow along as I build a MIDI controller box step by step.
The Rest
Emscripten
2013 - usable, but not complete
Tutorial on how to use Emscripten (c/sdl -> js/browser compiler suite) from Windows.
Instancing in OpenGL
21.11.2010 - done
Guide to the various methods of instancing in OpenGL (i.e. rendering tons of copies of a single object).
Photoshop tutorial: Fire Particle Texture
10.6.2010 - done
Step by step tutorial, in photoshop, how to make a fireball texture.
Particle System Basics
30.5.2010 - done
Some basics about particle systems.
Sphere Mesh Creation
28.3.2010 - done
How to create a sphere mesh via tesselation.
Joy of Springs
sometime in the summer of 2008
Did a simple tutorial on spring physics sometime in 2008, but never published it for some reason. Here it is anyway.
IMGUI seminar
2.8.2007 - done
Did a seminar on IMGUI with
Jetro Lauha at Assembly 2007 Summer. (Also see IMGUI tutorial, below.)
Rendering Lots of Cubes
14.2.2010 - done
Various methods on rendering tons of cubes with OpenGL.
Triangle Rasterization for Dummies
10.8.2009 - done
Another short tutorial, covering basics of triangle rasterization.
Getting More Out of Your Education via the Demoscene Spirit
6.8.2009 - done
Watch the presentation on Vimeo
about 15 minutes
Did a seminar on how to make school projects more fun at Assembly 2009 Summer.
L-system fractals
27.8.2008 - done
A short explanation of L-system fractals, along with a couple of downloadable implementations.
Ambrose3D
14.4.2007 - done
A simple, but complete bare-bones 3d engine using SDL and OpenGL in C/C++, including all sources, a blender exporter, and no strings attached.
My Assembly01 WinCE demo programming seminar
6.8.2001 - done
I talked at Assembly2001 about WinCE demo programming. Here are the seminar slides and
example source code.
Directx8+Fmod+CFL3
15.7.2001 - done
Here is a simple tutorial how to set up
directx8,
FMod and
CFL3.
We'll go step by step, first making a windows program, setting up dx8, drawing some stuff with dx8,
playing sound with fmod and finally making things nice and tidy with cfl.
Algorithm optimization
13.4.2000 - done
Or, "why clockcycle optimizations don't really matter".
Well, this one is more of a rant than a tutorial, really.
Buy 'Algorithms and data structures in C' for further enlightment.
DX7 the dirty way tutorial
28.10.1999 - done
DX7 the dirty way tutorial (German translation)
20.10.2000 - done
You've got your Visual C, directX7 SDK and old but trusty 3d engine, and you'd love to get some of that 3d acceleration magic going. Here's how.
Translation provided by Delax and Flupdiwup from Sundancer Inc.
Win32 coding tutorial
29.05.1998 - done
Based on Watcom C, gives a point of view to the Windows API. Good starting point for dos coders for moving into windows.