★ TouchArcade needs your help. Click here to support us on Patreon.

Hello everyone! Where oh where to begin?

10-21-2010, 07:55 AM
#1
Joined: Oct 2010
Posts: 8
Hello everyone! Where oh where to begin?

Hello everyone. My name is Merlin and Im new here! LOL

Ive been teaching myself Obj-C/Cocoa for about 6 months now. Been making utility type of apps and a simple multiple choice game but havent sent anything in to Apple yet. Regardless, Im loving it. I think its really starting to click. But of course I needed to complicate matters by looking into game development!

I feel a bit overwhelmed with my options for doing this though. I have a game idea... I have it sketched out, I can build my backgrounds and graphics in Photoshop, where do I go from here.

I started looking into OpenGL ES, I didnt realize it was as complicated as it is.
Ive looked into Cocos2d, again, fairly complex.
But I feel like if I focus and take my time, I can learn anything.
Then of course I stumble onto things like GameSalad and Corona. Of course the learning curve and drag and drop functionality make these choices very appealing.

So I have a couple of questions for the pros, or even the noobies with more knowledge then I...

1. I know the pros and cons of the third party SDKs, things like GameSalad's new model or Corona's no Game Center, IAP or iAds yet... however, is it a suitable choice for a first timer just to get my feet wet, or does it teach me the "easy way out" and get me started with bad habits??
Should I just bite the bullet and crack open my OpenGL ES book and get going!??

2. This is a question about animations in games...
Im good with Photoshop, very comfortable with it. Im also ok with Flash (would be better if I spent more time with it but good enough to make it work). Lets say I have my game concept sketched out (which I do) and lets say I can make some of the background animations in PS or Flash...
Should I bother with the animations in these programs or do I wait till I start coding and take care of the animations there? I guess Im still confused as to how the animations are constructed. Is it different depending on what SDK Im using? Should I be more concerned with getting the individual graphics built, put those into sprite sheets and then get to coding?? Im so confused.

3. This is regarding image size and scrolling games...
Lets say I want a MASSIVE stage. Picture a racing game with a large one-way track. How is that track constructed? Is the main background one giant png that just scrolls around the screen as I move my main character? Or is it many images that get drawn as they are called into view?

4. Another about image size...
With all these high quality images in may app, how do you manage to keep the app at a reasonable size?

Ive spent the last couple of weeks googling and on this forum, trying to get a handle on these things. Im sure as I learn more about iPhone game development Ill start to answer my own questions. I just thought I would open up a conversation about it.

Anyway, nice to meet you all. I appreciate any feedback or guidance and I look forward to learning some new things on my journey into iPhone game development!
10-21-2010, 10:53 AM
#2
It sounds like you have an uphill battle ahead.

Middleware:
This depends on your goal. It sounds like if you want to release something in the somewhat near future you definitely need to go with something like GameSalad. I'm saying this because you said Cocoas2d is complicated. I really don't like GameSalad's new terms once it comes to release time, and the price of Corona might be too much for a newbie.

A step up from there is Unity or Cocoas2d. They seem to be pretty popular and a lot of quality games are made using them. I'd say bite the bullet and go with one of those.

The third option is roll your own everything. I really only recommend this for people who already know they want to build everything from scratch, and why they want to do it. You'll learn the most this way, but unless you already know what you are doing the chance of release goes way down.

I wrote my own engine because that's the type of work I used to get paid to do. It put me in a good place now, but really that was about 2 years of work I didn't need to do in order to release a game.

Sprite animation:
Texture sheets are an optimization. I'd just flip between distinct images for animation until you get it working.

Image size and scrolling:
You need to use pvr4 compressed textures. I use about 6 max 2048x2048. More than that and you'll start crashing. With png you won't get nearly that much. If you want to do a 2d side scrolling game you'd want to break the background into multiple layers. Like a simple full screen background that keeps looping without much detail, and some small tree images that you place as you go. That way you can do old school parallax scrolling also.

Unsolicited advice:
Start small. Really small. Take your smallest idea and scale it back smaller. When you have a better idea of what's involved you can pick a bigger game as a followup. I'm betting that even the smallest game is way more work than you are expecting.

10-21-2010, 12:14 PM
#3
Joined: Oct 2010
Posts: 8
Quote:
Originally Posted by Golden Hammer View Post
It sounds like you have an uphill battle ahead.
Hey Golden Hammer, dont be my buzzkill yo! LOL Joking of course. This whole process has been uphill, but thats when I thrive. I like a challenge. And to your point below... Im not in too much of a hurry. I know good things come to those who wait, right? If I rush it, the game will feel and look rushed. I want to do this the right way, even if it takes me a year!

Quote:
Middleware:
This depends on your goal. It sounds like if you want to release something in the somewhat near future you definitely need to go with something like GameSalad. I'm saying this because you said Cocoas2d is complicated. I really don't like GameSalad's new terms once it comes to release time, and the price of Corona might be too much for a newbie.

A step up from there is Unity or Cocoas2d. They seem to be pretty popular and a lot of quality games are made using them. I'd say bite the bullet and go with one of those.

The third option is roll your own everything. I really only recommend this for people who already know they want to build everything from scratch, and why they want to do it. You'll learn the most this way, but unless you already know what you are doing the chance of release goes way down.

I wrote my own engine because that's the type of work I used to get paid to do. It put me in a good place now, but really that was about 2 years of work I didn't need to do in order to release a game.
Ya know what, I just spent some time on cocos2d page again and I shouldnt have said complicated, I shouldve said new to me. After looking over a couple of cocos2d tutorials I feel like I could handle it, but of course it doesnt look as easy as GameSalad and Corona.

When you say "roll your own" do you mean from an OpenGL ES project type of thing. Ive already started looking at some OpenGL ES tutorials and it may look daunting but not totally undoable. I think Ill start hammering through those tutorials and see where Im at.

Quote:
Sprite animation:
Texture sheets are an optimization. I'd just flip between distinct images for animation until you get it working.
Ahhh, textures! Ive seen mention of that. Ill have to look into textures a bit more.


Quote:
Image size and scrolling:
You need to use pvr4 compressed textures. I use about 6 max 2048x2048. More than that and you'll start crashing. With png you won't get nearly that much. If you want to do a 2d side scrolling game you'd want to break the background into multiple layers. Like a simple full screen background that keeps looping without much detail, and some small tree images that you place as you go. That way you can do old school parallax scrolling also.
Thats just what Im looking for Golden! My vision is to have one large bkg with less detail and layers on top of that to give the effect of depth.

As for the pvr4 compressed textures... I noticed I have no options for that in Photoshop. So of course I googled it and notice several plugins available. Is that usually the route people take to get the pvr4 or should I be using a separate program altogether?



Quote:
Unsolicited advice:
Start small. Really small. Take your smallest idea and scale it back smaller. When you have a better idea of what's involved you can pick a bigger game as a followup. I'm betting that even the smallest game is way more work than you are expecting.
This is excellent advice. I sometimes have a habit of diving in with the most complex idea then getting frustrated when I cant get it working how I envisioned it.
As for how much work is involved, I think I already learned that lesson in just the few apps Ive already created. But like I said, I dont mind the challenge.
So I think Ill give cocos2d a whirl as well as these OpenGL ES tutorials. Aint nothing wrong with learning something new ya know!
Thanks for the tips Golden Hammer. I appreciate it!
10-21-2010, 12:15 PM
#4
Joined: May 2010
Location: Chicago, IL
Posts: 18
Unity is nice and allows you to get more complicated if you desire. We are also building our platform into Unity to allow you to monetize your apps. I sound biased but Unity is a great sdk.
10-21-2010, 12:17 PM
#5
Joined: Oct 2010
Posts: 8
Quote:
Originally Posted by TapMeJared View Post
Unity is nice and allows you to get more complicated if you desire. We are also building our platform into Unity to allow you to monetize your apps. I sound biased but Unity is a great sdk.
Ill have to look into Unity also then.
So are all these extra SDKs out there to REPLACE writing it in OpenGL ES? Or to SUPPLEMENT it? I guess Im confused as to why there are so many different options out there.
Does Unity have all the bells and whistles like Game Center and In App Purchases?
10-21-2010, 12:21 PM
#6
Joined: Dec 2009
Posts: 120
Very good advice hammer. I'm also in the starting phases of developing a small game. I'm using Cocos2d. At first it seems difficult, but its fun to learn and there are LOTS of resources out there to help you along. Here is a nice tutorial to get you started with Cocos - http://www.raywenderlich.com/352/how...cos2d-tutorial

And to build on hammer's advice: Choose a very small project and then just start. You will make mistakes and you will get stuck, maybe even have to start over. Thats how you will learn the fastest. I made the mistake of getting stuck in research mode at first.

I'm not saying you have to stop researching and asking questions, but when you start a project and get stuck you will have a better idea of what questions to ask and what research to do.

Just my 2 cents.
10-21-2010, 01:58 PM
#7
Joined: Oct 2010
Posts: 8
Quote:
Originally Posted by Lonan View Post
Very good advice hammer. I'm also in the starting phases of developing a small game. I'm using Cocos2d. At first it seems difficult, but its fun to learn and there are LOTS of resources out there to help you along. Here is a nice tutorial to get you started with Cocos - http://www.raywenderlich.com/352/how...cos2d-tutorial

And to build on hammer's advice: Choose a very small project and then just start. You will make mistakes and you will get stuck, maybe even have to start over. Thats how you will learn the fastest. I made the mistake of getting stuck in research mode at first.

I'm not saying you have to stop researching and asking questions, but when you start a project and get stuck you will have a better idea of what questions to ask and what research to do.

Just my 2 cents.
This is got to be the friendliest forum for iPhone development Ive seen. You guys are awesome. Other forums seem to just ignore the noobs.

Lonan, this is also fantastic advice and advice I wish I heard when I first started on regular applications. The current app Im working on has more snapshots than a porn site. I cant tell you how many times I just said "Hell with it, Im starting from scratch.... again!!"

Another topic I wish I had a head start on... version control. Snapshots have been useful but dont truly provide version control. And mine seem to periodically disappear! LOL

So is there a reason you picked cocos2d over some of the others, like unity or sparrow?



By the way, Ive been looking over the tutorials in that link for a couple weeks now. I didnt want to waste time going into those if I ultimately decided to use a different framework. But Im starting to lean more towards cocos2d. There is something to be said about a large user base and the level of support you can get from the community. Thanks for providing the link, that is an excellent series of tutorials.

Last edited by iMerlin; 10-21-2010 at 02:00 PM.
10-21-2010, 02:04 PM
#8
Joined: Mar 2009
Posts: 659
It Sonds like You've got your hands full! Unless you've got unlimited time You might want to start off with Gamesalad or Corona.

you can make a good game with the features they offer. It's only problem if you
need to make a specific game engine that the SDK doesn't support.
Look at the game I made in my sig. A game like that is too custom to make with Gamesalad but if you're making a standard top down racer you shouldn't have a problem.

Last edited by 99c_gamer; 10-21-2010 at 02:06 PM.
10-21-2010, 02:30 PM
#9
Joined: Oct 2010
Posts: 8
Quote:
Originally Posted by 99c_gamer View Post
It Sonds like You've got your hands full! Unless you've got unlimited time You might want to start off with Gamesalad or Corona.

you can make a good game with the features they offer. It's only problem if you
need to make a specific game engine that the SDK doesn't support.
Look at the game I made in my sig. A game like that is too custom to make with Gamesalad but if you're making a standard top down racer you shouldn't have a problem.
Not to mention my regular job and my 3 year old twins at home! Needless to say Im looking tired these days! LOL

What worries me about using GameSalad or Corona is getting into "bad habits" and not learning OpenGL ES or even cocos2d. How many people actually made a game with those 3rd party SDKs while still learning the native frameworks?