See what five students at Carleton university learned developing their first Windows Phone game and apply what they learned to your next game.
Check out more tips from fellow students here
Could you briefly describe your application/game? Our game is a 3D, side-scrolling, platform game developed for the Windows Phone. Each level of the game is comprised of doors that when entered, lead to another door in the level, with the objective being to find the path to the exit door. As the levels progress, the game gets more challenging and obstacles are introduced such as locked doors, enemies and ‘death’ doors.
Did you use XNA, Silverlight or both? We used both XNA and Silverlight to develop our game. We chose XNA because it was a programming language we were familiar with. We developed the gameplay in XNA and used Silverlight to incorporate menus and user interfaces.
What was your banging your head against a wall moment? There were a few of them! The biggest one was that our game severely lagged when we ran it on a Windows Phone. Our code was optimized and our poly counts were extremely low, so we had a really hard time trying to solve this issue. We were trying to figure it out for weeks.
Did you ever solve that issue? Some other groups in our class were having similar problems so our professor, Ali Arya, looked into the problem. He figured out that if you disable some of the lighting effects it greatly improves the performance. Of course, we lost some of the visual quality of our game, but having a playable game was much more important.
If you had to build this same app again from scratch, what would you do differently?
I think if we were to build this app again from scratch, we would be more careful to test every aspect of our game before starting the next task. We rigged our model right away without testing it and ran into issues with the normals. If we had tested it first, we would have saved ourselves the time of rigging the model twice. We also didn’t have enough time to implement background music and sound effects, so we would make sure to implement those if we had to build this app again from scratch.
Any nice suprises? Yes! Incorporating touch and gesture detection was much easier than expected. There were a lot of helpful manuals and documentation online and when we made the switch from keyboard events on the computer to gesture events on the phone, it worked on our first try!
Did you leverage the touch screen? We made use of a few of the touch screen gestures. ‘Horizontal drag’ was used to get the character to move left and right, ‘flick’ was used to make the character jump, and ‘tap’ was used to get the character to go through a door.
Did you have a favourite feature? We particularly liked the application bar. We kept it visible throughout our game with a ‘home’ button that took the user back to the main menu of the game. It provided an easy way to incorporate an in-game menu and it helped our game to fit the style of other Windows Phone applications.
What is one thing you think you did really well in this application? We are really proud of how our game turned out. In our initial design of the game, we only planned to create six levels but we ended up making 15. We have really nice 2D and 3D graphics for each of the 5 worlds and our game is unique, entertaining, and addictive. The game is also extremely responsive to touch gestures, making it really easy and fun to play.
Are you publishing your application/game? Not at the moment. There are still some finishing touches we want to incorporate into the game before we put it in the marketplace. We are hoping to have it published within the next few months though.
Where can I learn more about your app/game? At our game website.
Who developed this application? Our team consists of five members working closely together to realize our vision. Yasmine Taha - Yasmine was the project manager as well as the Level Designer for the game to keep the team on track and come up with new levels which get progressively more challenging. Brittany Pinder - Brittany was the lead programmer and brought the game to life. Ayah Jardaneh - Ayah was responsible for all the 3D modelling and 2D graphics, to create unique concepts for each of the levels. Kyla Hidalgo - Designed and the developed the user interface for the game as well as the game assets Lindsay Coderre - Lindsay focused on rigging and animation to bring life to Kyla and her adversaries.