As I’ve mentioned in recent posts, my day job is a bit overloaded lately. The good news is, after spending significant time working on Saturday, I discovered that I will not have my first thing Monday morning meeting. What that means is, today I get to code!
I’ve been struggling with inserting sprites between layers of a TileMap in my game. To that end, I’ve decided to go back and retake some of the classes I took early on when I first started coding for iOS. I realize that like many things, you need to spend time coding to keep some concepts in your mind correctly.
I’ve also picked up a few new tools to help in the game design, the main one being LevelHelper. This allows for integration of cocos2d and box2d for creating level based games. There’s a great tutorial by Ray Wenderlich on how to make a JetPack Joyride like game using levelhelper. I am hoping to play with this design to get my game designs jumpstarted.
I don’t have a lot of time to do my blogging, coding, and gaming… I have my day job which has been consuming more and more of my free time, including my time on weekends, and evenings. I bet many of you can relate to that, especially if you are doing mobile development in your spare time. I picked up mobile development a few years ago, as a way of getting back to the code. I’d been a developer many years ago, but as my career advanced, I started doing architecture, management, etc. The more I advanced the less I got to code.
Getting back to the code two years ago, was load of fun. It provided me with hands on experiences that many of my day job’s customers were dealing with. The ability to get back to this level of understanding has been invaluable. Having said that, I am also dealing with many of the challenges that customers and other developers are dealing with. A few of the ones I’ve been dealing with are:
- Keeping up with multiple device characteristics. Even though most of my development is on iOS, I am still dealing with iPhone vs. iPad, normal vs. Retina. I can only think that adding android or Windows phone will compound that challenge.
- Testing, and I don’t just mean the device problem. As a one person development team, I find that testing mobile apps to be difficult. I use the emulator to test as much as I can, but I also have to test on my devices. Of course, I don’t have all generations of the iPhone. To that end, I tend to force people to upgrade to “current” versions of iOS. This is probably not practical for most developers.
- UX/UI design. I am not a graphic artist. So even though I have ideas, I can’t always visualize them. So things don’t look as good as I want them.
- New toolkits. I am working on a game… Of course I am not an expert on all of the classes and methods within iOS, so adding a game platform library into the mix means I am even less of an expert. When should I use the toolkit vs. native? How to best optimize my apps performance
What are your biggest challenges?
Learn-cocos2d.com is the online home of the book “Learn iPhone and iPad cocos2d Game Programming” by Steffen Itterheim. This book is designed to help the beginning game programmer understand the cocos2d game library, which is a cross platform library that is targeted at 2d games.
Steffen does a great job of introducing you to the basics of game development while also showcasing various game types. The includes not only development concepts, but also includes information on other libraries and resources to help you get started with graphics, audio, and marketing.
Steffen includes not just code snippets, but working games that he uses to explain various concepts. Each of these are well commented and structured so that you can get started with your game.
While Steffen focuses exclusively on iPhone and iPad programming, the cocos2d library has been made available for android also. So if you are looking at developing games, you should check out the book, and get gaming!!