Jeffrey M. Barber

Tombstone

Z3DWarpEngineSDK

2001 โ€“ 2002 ยท age 19โ€“20

What it was

A game engine packaged as a Windows DLL, in C++ with OpenGL and DirectInput 8, built because Jeff was tired of rewriting the same window code for every project. A game handed over eight function pointers: init, a 3D render, a 2D render, a per-frame update, and four for keys and mouse. The engine owned everything else: the window, the pixel format, the message loop, the input devices and the clock. Around that core sat a resource pack, a shared texture depot, a GUI screen stack, a callback-driven particle generator and a small math library in C. It died a skeleton. Loading a BMP showed a message box, the frustum test returned true before testing anything, and no game ever linked against it.

Wins, for the age

What it taught

Genealogy

Ancestors: Ant Colony: resource packs and the urge to stop rewriting engine plumbing. Pack Unpack: disk-overrides-pack and the pack number in the id's top byte. Descendants: Cauldron v1: the engine-as-library instinct, done properly with real math and animation. GGPlus: the GUI screen stack grew into screens as scene-graph nodes.

Epitaph

Here lies Z3DWarpEngineSDK. It offered any game a window, a clock and a mouse for the price of eight function pointers, and no game ever came to collect.