During my apprenticeship as a software developer (~2000ish) I got together with other people from school and we set out to program a game.
I was in charge of doing the 3D engine and here are the results of the first attempt:
First screenshot of the engine Single colored quad Two colored quads First mesh loaded Rendered as solid Terrain Map loader Map loaded Wireframe of terrain Movable camera Testing the 3DS loader with a multi-part object Testing the 3DS loader with a complex shape 3DS object with two different materials Loading textures Textured terrain Terrain with blended textures 3DS object and terrain Particles More particles Particles Particles Math is fun Still! Moar particles! Fireball! Skybox added Linear fog added to the scenery Fog Terrain mesh Problems with normals Placing objects on the map Placing objects Object on terrain Tower on the map Placing objects Wireframe rendering of objects Fire! Fire in pit close-up Fire in a pit Water added Z-ordering works Frustum culling test Frustum culling a quadtree Frustum culling Frustum culling Sunken trees AI test
The terrain was based on a .tga file that looked like this:

Based on the first experiences I wrote a second engine so we could start having more user interaction. That needed some UI components that I’ve mocked-up:
Loading objects with transparencies Transparency Transparency with moving objects Transparent window Transparent windows with updating text Monochrome with transparency Transparent window Window ordering Statistics
The second iteration looks like it was a step back, but it actually allowed me to prototype things faster. At least it would have, school ended and so did the time to work on this.