I wanted a reason to separate OpenGL internals, and graphics overall, from my engine's core, so I wrote that while creating a text mode rendering option.
In the second half, the engine runs on a headless linux box that doesn't even have the OpenGL libraries available, while rendering to the console through std::cout.
The engine is named Osprey3D. More details to come.