From C++ to HTML5: Rebuilding a game using open web standards
Wednesday, June 29, 2011 11:00:00 AM
The demo is being made by Opera Core developer Erik Möller. He has 15 years of experience in the gaming industry, and before he started at Opera, he created an indie game called Emberwind (trailer).
Since he's working for a browser company now, he decided to get a little more familiar with various web technologies. One of his first steps was to get some hands-on experience, so he decided to recreate the logo of his indie game company using SVG.
That apparently got him thinking... What could he do next?
The answer came this summer, when he was able to get some help from three students doing a summer internship at Opera. Their job will be to help him convert the first couple of levels from Emberwind to HTML5 and other web technologies!
So this summer, a game originally written in C++ will be gradually rebuilt using open web standards. The engine, input, output, and so on, will have to be handled by the browser. It will probably even have to work on devices without the standard keyboard and mouse combo!
But how does one go about doing this exactly? Where do you start? What are the challenges? What creative solutions can one come up with to successfully complete a C++ to HTML5 port?
As luck would have it, Erik has been able to post weekly-ish updates on the progress. He has written about the process, and listed both challenges and triumphs as they work their way through the various parts needed to form a complete game experience.
Below is a list of the updates so far. It starts with the SVG experiment that seemed to be the first spark of the project, and ends with the latest progress report so far - a rendering demo where you can navigate around one of the game's maps.
Most of the updates actually have demos you can try out to see how it works in practice.
- Part 1: Animaged SVG logo with audio
- Part 2: The start of the Emberwind HTML5 project
- Part 3: Flash-free audio
- Part 4: The first rendering demo
If you are interested in HTML5 and other web technologies, or even games, be sure to check out his blog for future updates.