views:

979

answers:

5

I am trying to figure out what game engine I should use? Right now I am trying to pick from toque, shiva, and unity. I wil be learning c# and objective c so I can develop iphone games, some windows games, and possibly xna games for xbox. I am also 12 years old(just in case you tell me about buying something that cost a ton of money or something...)

Also any tips for learning objective c, c#, and designing and coding games?

+3  A: 

Best thing for the future is to do what RaYell said in his comment. Start with ONE thing, learn it, and learn it thoroughly before moving on to something else. If you try to take on a half dozen things at once, you'll have broad surface knowledge across all of them, but not enough depth to do anything useful with any of those technologies.

Depth-first > Breadth-first when it comes to learning programming. ;)

jrista
yeah but Ill need to know what engine for my iphone soon
If you have never programmed before, you are far from being capable of writing a game for the iPhone. It sounds like Objective-C is the language your looking to learn...I would start there, and plug away at it and get some solid understanding under your belt before trying to learn an additional framework for writing games.
jrista
well I know c and just started learning objective c
+1  A: 

You don't have a choice when developing for iPhone. You'll have to use the Apple iPhone SDK. I think this requires you programming in C (I think).

Likewise, if you're developing for XBOX (and you don't have the corporate XBOX SDK that real game studios purchase), then you'll need to use XNA. You can use the XNA framework (free environment and framework), but you'll also need to learn C# (or VB.NET although officially just C#). Using XNA also lets you build games for Windows environment.

I think you should probably start with something simple before jumping into either XNA or iPhone SDK. Even using something like VB.NET (VS Express is free) windows form app for a simple game like tic-tac-toe would be a good starting point.

It seems like you need to learn a different language and a different framework/sdk to reach all of these environments, so I'd recommend picking one and trying to learn that before you try to learn multiple things. Since C# and VB.NET (and XNA) are all free, have free tutorials, and free development environments (and you're probably using Windows, so you have the requirements) then I'd recommend trying one of these things first. That way, you can see if its something you really want to do. Building games (and software) isn't an easy job, so make sure you do a lot of research and learn the fundamentals before trying to jump into game programming.

Jim W
well I already know c and a lot of objective c so far. You can get an engine for the ipohne app and design your game there and I can code also code some of it. Lastly, for the xbox, I think I am going to hang off on that now. Thank you
Also, just to note. XNA isn't a game engine. It's a framework. Torque would be a game engine. The iPhone SDK isn't a game engine either.
Jim W
+2  A: 

If you want to go for both iPhone and XNA then I would consider going with Torque as your engine. They have versions of their 2D and 3D engines for both of those platforms, as well as for the PC, so you can have a fairly similar experience and toolset when developing for all 3. Not exactly the same, but pretty close.

Gerald
hmm. Torque is pretty expensive for all of that. It does look like the best thoe. What do yu think about shiva, and you can do everythign for just $170 stonetrip.com/version-comparison.html I dont know, what do you think?
I have never really used Shiva, so I can't give a fair opinion of it. It looks like a decent engine, but it looks like it doesn't come with the source code, which would make it a non-starter for me, but might be okay for you. Something to keep in mind with this though: Shiva is not $170, its €170 (euros), and when you add in the VAT tax it's €202, which at current exchange rates is about $290. Still cheaper than Torque for the iPhone, but getting closer.
Gerald
well the toque iphone is $650, but if it doesnt come with the source code then I dont want to get it. hmmmm now I dont know what to do. Maybe ill just raise some money for torque...
what about unity?http://unity3d.com/unity/features/iphone-publishing
Unity is pretty good, though just to get the Indie version with iPhone Basic is around $600, and you still don't get the source code or any of the advanced features. To get Unity pro with iPhone Advanced is around $3000, and still no source code. Though their .NET scripting and C++ plugin support still allows you to do quite a bit without having the source.
Gerald
alright I think Torque is definitely the best for this. Thanks
I am going to get the 3d instead of the 2d is that a good choice?
They're both good it really depends on what type of game you want to make. Making a 3D game for the iPhone is a little trickier, but the acceleromater does make for some interesting possibilities.
Gerald
I cant afford $750 for a game engine, its way to much.
+1  A: 

More importantly than learning an engine or a language (dialect) is to focus on something you can actually pull off in a reasonable time frame. Biting off more than you can chew (common in indie game development) will just deter you from ever trying again. Game development is difficult, an engine is no shortcut.

Aim on a simple, single-player, 2D graphics game. If it's really your first game, you should use generated, ugly-looking content rather than trying to load resources from disk, which probably just complicates things. Build it from the buttom up. You will learn the basics on memory organisation, sprite/bitmap workings, sounds, operating system interaction, to mention a few things.

When you know how to do that that and know it well, you can move on to an engine like Torque; and then you might actually put it to some use. And hey - good luck and have fun!

Jonas Byström
+1  A: 

I'll add my two cents regarding Unity. I haven't worked with Torque and haven't even heard of Shiva until now (it looks interesting).

My (somewhat limited) experience with game development is that above all, there is a huge amount of learning involved with the game development world and you really need to choose carefully where you spend your time.

You're on the right track looking at comprehensive game engines that include middleware tools. If you really want to make games (and not game engines), you'll want to focus exclusively on generating assets and game logic.

I have worked with XNA and can say that, by itself, it doesn't provide any of the middleware tools you'd need to build a complete game.

As for Unity Vs Torque, I choose unity because of their strong focus on C# (which will only grow more central in their upcoming release). Furthermore, the two communities are vastly different. Torque developers take a lot of pride in the fact the Torque includes the source. It is regarded as more difficult to work with, but will allow you to learn about the core code. Unity is closed source, has an active community and focuses on game development. Their community's attitude is that they are not there to rewrite game engines and that if there is a bug, the Unity team can and will solve it faster and better (they do a great and speedy job of resolving bugs).

My coding philosophy is more to the second. I want to make a game, not a game engine and I prefer a comprehensive tool rather than multiple tools that you have to tie together. Unity is very professional and you can get up to speed very quickly. I'm having a blast developing in it and have gotten concept work together very quickly.

Also, you'll need to learn at least basic 3d modeling and animating. At the very least, you should be able to block out some characters and find an artist to make the real versions later. I strongly recommend Digital-Tutors great series on creating Next-Gen game characters in Maya and ZBrush. Its a series (you don't need the XNA part).

Best of luck. Above all else, make a specific plan and stick with it.

Michael La Voie