EDGELIB now open source!

This is quite trip down memory lane and perhaps the story of how Elements got into mobile development.

It all started around 2003, when Elements was still located at the Peperstraat in Zaandam and Johan was still an intern, we had the crazy idea to create a game for the Pocket PC running Windows Mobile. We had a couple of Dell Axim X5’s lying around the office and we were looking for a cool internship assignment for Johan to work on. We all hated J2ME with a passion, so Johan got his way in Visual Studio and started coding in C++. I don’t quite remember what the first game was Johan worked on (S-Tris, E-Ball?), but after a few test spins on the Axims, we thought it would be cool to have that same game run on one of the Nokia phones running Symbian Series 60 (S60) we had, which were quite advanced back then. Johan decided to crank up his assignment a notch by starting the development of a “game engine” that would run on Windows Mobile, Symbian Series 60 and Windows desktop he was developing on.

That went so well that at some point we decided to make the engine a product of its own. I remember the discussion of the name of the engine, we coined “Forest” to honor its creator, but the name “Edge” kept coming back and we settled with that name that would eventually became “EDGELIB”, spelled in all caps for some reason (– in retrospect, I now realize “Edge” should have been an acronym for “Elements Delicious Game Engine”).

EDGELIB brochure (left), EDGELIB poster (center) and EDGELIB roll-up banner, art by Romano Molenaar (right)

Anyway, we created a website, printed a fancy brochure, added a free evaluation version of the engine, wrote the SDK documentation, tutorials and samples and came up with a licensing model. In September 2004 we were ready to release version 1.00 and we teamed up with the good guys of Chillingo (later acquired by EA) who had a big network of mobile game developers to spread the word. We had a booth at the 2008 GDC in San Francisco to demo EDGELIB (where we also met and befriended Erik t’ Sas of Khaeon Games, but that’s all whole different story). Other events to promote EDGELIB included MEM 2007 in Monte Carlo, the Mobile World Congress in Barcelona, Tokyo Game Show, Casual Connect Conference in Amsterdam, the Leipzig Game Convention and even an “EDGELIB on tour” trip through Asia visiting Taiwan, Japan and South Korea.

Johan, now as one of Elements’ first employees, kept working on a few other mobile games and adding new features to the engine. Our idea was to create fun games from different genres that would require different features from the engine. In a couple of years we published simple breakout-style game E-Ball (featuring programmer art), Tetris-clone S-Tris, Pang-like arcade game Li-Nuggz, space shoot-em-up Foo Fighter, side scroller Blazar and networked multiplayer game Quartz 2 and puzzle game Flurkies. Many sequels and special X-Mas and Deluxe editions of our games were also released.

Early EDGELIB games
Flurkies (left) and Quartz II Deluxe (right)

Other developers joined the project and we kept adding more and more features to EDGELIB and adding support for new mobile and handheld platforms. EDGELIB 4 supports over 15 different mobile and desktop platforms, including Windows Mobile/CE, Symbian S60/S80/S90/UIQ, Antix Game Player, Maemo 5, iOS, Android, GP2X, Gizmondo, Windows, Linux X11 and Mac OS X. Support for a few other platforms, such as ALP and Palm OS, was also considered. Key features include advanced and lightning-fast optimized 2D operations, basic native 3D functions, OpenGL(ES) support and hardware acceleration, Bluetooth and TCP/IP networking, file operations, input handling, sound playing, memory management and much more — all cross-platform.

In its heydays, we had over 35 licensees from all over the world that created many great games and applications with EDGELIB. Notable games are Syberia I and II developed by Tetraedge Games, award-winning Star Defense by our colleagues at Rough Cookie, Taito-published WaterWays and many, many more. Besides games, also several applications were created, including a Greek car navigation system, a personal shopping assistant and a fancy 3D graphical UI for Windows Mobile.

Syberia on iPhone by TetraEdge
Star Defense on iPhone by Rough Cookie

The release of the iPhone in 2007 and the decline of the supremacy of Nokia phones started the downfall of EDGELIB. With everybody moving to creating games for iPhone OS (later iOS) there was no immediate demand anymore for cross-platform development on the rapidly aging non-touch Nokia smartphones and the dated Pocket PCs. The final release of EDGELIB, 4.02 was released in May 2012. While we did not update EDGELIB anymore, in the slipstream we started a spin-off mobile game company called Rough Cookie in 2008. Rough Cookie was acquired by DeNA’s US subsidiary ngmoco in 2011. Meanwhile mobile development at Elements multiplied and grew to about 50% of our business today.

In the years that followed we always had the idea to open source the complete code of EDGELIB, but the plan never really took off. Until now.

We have shut down the website edgelib.com, converted all documentation to Markdown and published the full source code of EDGELIB on our GitHub account. Now EDGELIB’s source is out we hope someone will find it useful and perhaps use it in a new project. We believe that many parts of the library, especially the 2D operations, are still very useful.

Let us know what you think!

Hilarious bonus video from 2008 with special guest — and friend of the show — Joost:

 Also follow Elements on Facebook, Twitter and LinkedIn!

Originally published at www.elements.nl on September 6, 2017.