Awakening (2006)

Windows, C++, OpenGL, FMOD Ex API

Awakening is a set of two fantasy themed digital music disks featuring music from Karol Sabat accompanied by excellent hand-drawn paintings by Maciej Wojtala, Marcin Jakubowski and Łukasz Śliwiński.

The interactive player is a native Windows application and uses shadowArts – an OpenGL GUI toolkit written specifically for the Awakening project. No existing GUI library seemed like a good tool for the job at the time so I created my own. First version took several months to develop and included support for commonly used UI elements like text labels, buttons and context menus The API drawed mostly from Qt design, however callbacks and events were done in pure C++ using function objects (functors). This approach turned out to be elegant and easy to use, and most of all, did not require custom C++ preprocessor like Qt did.

Both versions supported fully themable widgets with means to animate them. Later, version 1.1 used in Awakening: part 2, added basic animation framework and timers eliminating the need to do animations by hand. No input widgets were ever written simply because there was no need for them.

Download (part 1)
Download (part 2)