CS298 Proposal
JavaScript Game Engine for Mobile using HTML5
nakul Natu (nakul.natu@gmail.com)
Advisor: Dr. Chris Pollett
Committee Members: Dr. Teoh ,Mr. Anirudha Shinde.
Abstract:
The goal of this project is to develop a mobile JavaScript game engine which uses HTML5. We will be able to create platform independent mobile games using this engine. To achieve game persistence, HTML5 local storage will be used. The created games will be stored on the desktop of the device in the form of a data URL, and this can be clicked just like a native app. When the user launches the data URL, the game will open in a browser but the user will feel he is in a native app. The data URL contains the complete game. HTML5 has many restrictions on use of local storage, connecting it to the data URL will be a really challenging aspect of this project. I will also provide test games created using the engine to support my project.
CS297 Results
- Created a simple JavaScript game Pong for mobile device and also created its data URL.
- Studied existing game engine by developing a small game "Flower Picker" using "Crafty".
- Added high score functionality to the game using HTML5 local storage.
- Checked for different ways to give game native app look by connecting data URL and html5 local storage.
Proposed Schedule
Week 1 - 2:
01/25/2012 - 02/07/2012 | CS298 Proposal |
Week 3:
02/08/2012 - 02/14/2012 | Decide game engine spec |
Week 4 - 5:
02/15/2012 - 02/28/2012 | Design and start coding for game engine - Deliverable_1 |
Week 6 - 7:
03/01/2012 - 03/14/2012 | Code game engine with some functionality |
Week 8 -9:
03/15/2012 - 03/28/2012 | Finish game engine coding and start testing - Deliverable_2 |
Week 10:
03/29/2012 - 04/11/2012 | Create a test game and finish testing - Deliverable_3 |
Week 11 - 12:
04/12/2012 - 04/25/2012 | Start writing CS298 report and fix bugs |
Week 13:
04/26/2012 - 05/02/2012 | Finish the report |
Week 14 - 15:
05/03/2012 - 05/16/2012 | Prepare for oral defense and presentation |
Key Deliverables:
- Software
- Deliverable_1 : Game engine design document
- Deliverable_2 : JavaScript Game Engine
- Deliverable_3 : Test Game created with the engine
- Report
Innovations and Challenges
- Game engine is based on JavaScript and HTML5, hence we can create portable games. We don't need to write different code for different mobile devices.
It will be challenging to take into account different browsers and operating systems while writing the game engine.
- Game created will be accessible same as native app. User will not feel anything different. But it is difficult to connect data URL or bookmarklet to local storage.
References:
[MARK2009] Dive Into HTML5. Mark Pilgrim. http://diveintohtml5.org/. 2009.
[RICK2010] Developing portable mobile web applications. Rick Rogers. Linux Journal Volume 2010 Issue 197. 2010.
[JORG2011] Collaborative framework for browser games development. In proceedings of the 2011 Workshop on Open Source and Design of Communication. 2011
[LMAS1998] RFC2397 : The "data" URL scheme. L. Masinter. IETF. August 1998 |