View Full Version : Learning to Code
TheOZ
01-19-2009, 12:48 AM
Alright so my friend and I started talking about creating a game around September and he mentioned it to his mom and for christmas she got him a C++ coding book. He already knows alittle bit of coding with things like java and so on(cant remember off the top of my head), but im wondering what else we'll need and if there is an order we should probably learn the programming in. Would really appreciate if someone could help me out, thanks!
BulletDev
01-19-2009, 12:52 AM
Alright so my friend and I started talking about creating a game around September and he mentioned it to his mom and for christmas she got him a C++ coding book. He already knows alittle bit of coding with things like java and so on(cant remember off the top of my head), but im wondering what else we'll need and if there is an order we should probably learn the programming in. Would really appreciate if someone could help me out, thanks!
Once you learn C++, you will be able to easily transfer to Objective-C and Cocoa, the two main languages used in Xcode. If you have already started learning C++ and have the determination to finish what you've started, you guys will do great. I'm glad your not using Unity :P
Good Luck,
- James
games42
01-19-2009, 12:57 AM
Once you learn C++, you will be able to easily transfer to Objective-C and Cocoa, the two main languages used in Xcode. If you have already started learning C++ and have the determination to finish what you've started, you guys will do great. I'm glad your not using Unity :P
Good Luck,
- James
wait...now im confused...is it better NOT to go with unity? You said i should go with unity but here u said u r glad they r not using it...:confused:
TheOZ
01-19-2009, 01:01 AM
Once you learn C++, you will be able to easily transfer to Objective-C and Cocoa, the two main languages used in Xcode. If you have already started learning C++ and have the determination to finish what you've started, you guys will do great. I'm glad your not using Unity :P
Good Luck,
- James
That's really good to know, thanks alot!
BulletDev
01-19-2009, 01:32 AM
wait...now im confused...is it better NOT to go with unity? You said i should go with unity but here u said u r glad they r not using it...:confused:
Uh-oh seems as if I've upset a few people.
Let me sum this up: Unity is good for people who simply do not want to learn to code, or have no coding experience. It is a good way to make a game, but I like to see people actually learning programming languages, and taking extra time to develop.
Anyways, you should both be fine with the advice I gave you. I got confused with the mass amount of topics I found from you guys.
That's really good to know, thanks alot!
Sarcasm?
games42
01-19-2009, 01:45 AM
Uh-oh seems as if I've upset a few people.
Let me sum this up: Unity is good for people who simply do not want to learn to code, or have no coding experience. It is a good way to make a game, but I like to see people actually learning programming languages, and taking extra time to develop.
Anyways, you should both be fine with the advice I gave you. I got confused with the mass amount of topics I found from you guys.
Sarcasm?
ok that makes sense...I had a feeling that you meant that i.e. the appreciation of learning the code but it's easier with unity but I just wasn't sure so thanks for explaining....was never upset lol just confused...it can be scary when looking at all the new programs in what is basically new languages....and ps I don't think he was being sarcastic...I think he really meant to say thanks alot...just like I feel to say thanks alot to you....and WITHOUT SARCASM! :) Thanks Alot!
Eric5h5
01-19-2009, 02:00 AM
Let me sum this up: Unity is good for people who simply do not want to learn to code, or have no coding experience.
No, it's not. If you can't code, you will get nowhere fast with Unity. You have to use C# or a variant of Javascript to develop your apps (which gets compiled to native ARM code in the end). The drawback is the overhead...if you want to make the smallest, most efficient game, then you wouldn't use Unity. However, in a lot of ways it's better to use an engine that takes care of the hard stuff for you, in the same way that there's no real point learning assembly language these days (well, for most things).
Potentially it's easier to make better games with Unity, because the process is conducive to experimentation and tweaking. So rather than going through the pain of compiling and trying to test in the simulator and so on, it's easier to stick with it until it's perfect, instead of settling for "eh, it works, good enough". Of course, most people want to rush things and push unpolished apps out as soon as possible, but that's obviously true for non-Unity apps as well.
--Eric
BulletDev
01-19-2009, 02:01 AM
ok that makes sense...I had a feeling that you meant that i.e. the appreciation of learning the code but it's easier with unity but I just wasn't sure so thanks for explaining....was never upset lol just confused...it can be scary when looking at all the new programs in what is basically new languages....and ps I don't think he was being sarcastic...I think he really meant to say thanks alot...just like I feel to say thanks alot to you....and WITHOUT SARCASM! :) Thanks Alot!
Ahh OK. Thanks for understanding :)
- James
games42
01-19-2009, 02:23 AM
No, it's not. If you can't code, you will get nowhere fast with Unity. You have to use C# or a variant of Javascript to develop your apps (which gets compiled to native ARM code in the end). The drawback is the overhead...if you want to make the smallest, most efficient game, then you wouldn't use Unity. However, in a lot of ways it's better to use an engine that takes care of the hard stuff for you, in the same way that there's no real point learning assembly language these days (well, for most things).
Potentially it's easier to make better games with Unity, because the process is conducive to experimentation and tweaking. So rather than going through the pain of compiling and trying to test in the simulator and so on, it's easier to stick with it until it's perfect, instead of settling for "eh, it works, good enough". Of course, most people want to rush things and push unpolished apps out as soon as possible, but that's obviously true for non-Unity apps as well.
--Eric
So what advice would you give me? I'm completely new to programming and want to make a really great iphone game....where do I start? Should I spend my time learning Unity or should I learn Objective C? or C+ or Cocoa? or Java? I really have no clue but want to learn how....What's the easiest/best way to go?
Eric5h5
01-19-2009, 02:52 AM
So what advice would you give me?
If you want to do 3D games, you'll be able to get results much faster with Unity instead of having to spend months/years learning all the ins and outs of OpenGL, transform matrices, and so on. However, it's also a huge program and will take some time to learn how everything works. For somebody with zero programming experience, I'd probably recommend learning the basics of C or something first. Nothing fancy, just general programming concepts. Then move to Unity...I've seen people get overloaded trying to learn programming and the Unity API at the same time. I think some people get the wrong idea when they hear "easy to use"...it's not at all intended to be a "no coding" solution, but rather a rapid development solution. (Although, if you're using it with a team, it's pretty easy to set it up with tools so that the non-coders can still do things in it.)
On the other hand, if you want to do 2D games, Unity isn't necessarily the best solution, although there are still a number of advantages...if you can live with the overhead, it's going to allow much faster prototyping, for one thing.
--Eric
games42
01-19-2009, 03:01 AM
If you want to do 3D games, you'll be able to get results much faster with Unity instead of having to spend months/years learning all the ins and outs of OpenGL, transform matrices, and so on. However, it's also a huge program and will take some time to learn how everything works. For somebody with zero programming experience, I'd probably recommend learning the basics of C or something first. Nothing fancy, just general programming concepts. Then move to Unity...I've seen people get overloaded trying to learn programming and the Unity API at the same time. I think some people get the wrong idea when they hear "easy to use"...it's not at all intended to be a "no coding" solution, but rather a rapid development solution. (Although, if you're using it with a team, it's pretty easy to set it up with tools so that the non-coders can still do things in it.)
On the other hand, if you want to do 2D games, Unity isn't necessarily the best solution, although there are still a number of advantages...if you can live with the overhead, it's going to allow much faster prototyping, for one thing.
--Eric
well I wasn't necessarily looking to make 3d games as I would imagine that would be harder to make. I think I'd rather start with easier to code games...I'm guessing along the lines of scoops, up there, wurdle etc....so I should learn basic Objective C instead of unity?
Eric5h5
01-19-2009, 11:43 AM
well I wasn't necessarily looking to make 3d games as I would imagine that would be harder to make.
Actually, making a 3D game in Unity is easier than making a 2D game the "hard way" with Objective C. The only thing that's harder is making the assets, since you need to know 3D modeling.
--Eric
TheOZ
01-19-2009, 12:55 PM
Uh-oh seems as if I've upset a few people.
Let me sum this up: Unity is good for people who simply do not want to learn to code, or have no coding experience. It is a good way to make a game, but I like to see people actually learning programming languages, and taking extra time to develop.
Anyways, you should both be fine with the advice I gave you. I got confused with the mass amount of topics I found from you guys.
Sarcasm?
Haha sorry, no it wasn't sarcasm I was just saying that it's good to know that if I learn C++ coding then Obj-C wont be as tough. Sorry for the misunderstanding and again thanks.
AppStoreGamer
01-19-2009, 06:19 PM
There is no "easy" way to make an application, let alone a game. If you really think you have a great idea, download the SDK (you'll need it weather you go with Unity or not). Take a look. Download some sample code. If you can somewhat understand it, go with that. If you know ANY javascript or C#, I strongly suggest Unity.
Unity was made from the ground up to be very rapid and quick paced. The SDK was made to be thorough. I'm not saying that Unity isn't but be aware that you have some restrictions with Unity.
Then, there's the other choice you have to face. 2D or 3D? 3D, go with Unity hands down. 2D, you might have to really think about what you're going to do and then compare the two.
I personally suggest Unity. I was totally new to coding two and a half months ago. Learned Unity in one and spent two or three weeks messing around with the iPhone application building process in Unity. Came out with Rolly fairly quickly. It's definitely not the best game out there but I'm pretty impressed with it being my first game and all.
Good luck and post your final decision here!
TheOZ
01-19-2009, 07:54 PM
First we wanna start small so games such as match-3's and puzzlers are what we will probably begin with then with a little more experience I personally want to branch out into genres like 2Dplatformers and TD's, so what engine do you suggest for those genres?
Also I hear all this talk of Unity is it really that great and if it is, if I got it would it help with those genres above and if mastered and I wanted to branch out into obj-c and c++ would I have to start from scratch in regards to learning the languages or would the knowledge I learned using Unity be good enough to easily catch on to these languages?
If Unity is easier I might start with that then once I understand coding alittle more then I'll learn the languages.
Unity to C++/Obj-C? or C++/Obj-C with no unity? Which way is best and is most fulfilling?
Thanks guys!
AppStoreGamer
01-19-2009, 08:14 PM
Go over to Unity3d.com and watch the video. Check out the trial. See what you can do with it. In fact, there's even a sample project for Unity iPhone on something similar to the game logic you discussed above here (its the iPhone-Match one):
http://unity3d.com/support/resources/example-projects/iphone-examples
(just remembered, you can't open up Unity iPhone files with the normal Unity....so send them an e-mail and they'll be willing to give you a free iphone demo/trial)
With the things you listed above, X-Code would be favored. However, if you want to branch off of that, I'd highly recommend looking into Unity.
games42
01-19-2009, 11:00 PM
Go over to Unity3d.com and watch the video. Check out the trial. See what you can do with it. In fact, there's even a sample project for Unity iPhone on something similar to the game logic you discussed above here (its the iPhone-Match one):
http://unity3d.com/support/resources/example-projects/iphone-examples
(just remembered, you can't open up Unity iPhone files with the normal Unity....so send them an e-mail and they'll be willing to give you a free iphone demo/trial)
With the things you listed above, X-Code would be favored. However, if you want to branch off of that, I'd highly recommend looking into Unity.
ok thanks....but just to clarify...is xcode the same as objective-c?
And can you recommend a good book to learn it? I'm assuming that's the best way to learn it?
THANKS!!!!
Eric5h5
01-20-2009, 09:38 AM
ok thanks....but just to clarify...is xcode the same as objective-c?
Objective-C is a language; Xcode is a development environment which supports (among others) Objective-C.
--Eric
andyf1702
01-21-2009, 03:22 AM
I would probably learn C and then move onto C++ so you can learn about object oriented programming.
There are plenty of decent books out there to learn these.
From what I gather from reading the forums, it seems the programming language for unity is similar to java script.
If you know C, then learning Unity shouldn't be too difficult.
Andy
Eric5h5
01-21-2009, 12:42 PM
From what I gather from reading the forums, it seems the programming language for unity is similar to java script.
There's more than one language; you can use C# as well. Regular Unity has Boo (similar to Python) as a third option, but I don't think that works on the iPhone version at this time.
--Eric
TheOZ
01-21-2009, 11:59 PM
Go over to Unity3d.com and watch the video. Check out the trial. See what you can do with it. In fact, there's even a sample project for Unity iPhone on something similar to the game logic you discussed above here (its the iPhone-Match one):
http://unity3d.com/support/resources/example-projects/iphone-examples
(just remembered, you can't open up Unity iPhone files with the normal Unity....so send them an e-mail and they'll be willing to give you a free iphone demo/trial)
With the things you listed above, X-Code would be favored. However, if you want to branch off of that, I'd highly recommend looking into Unity.
Haha you basically conviced me alraedy, but so far I think what I am going to do is read the books(C++,Obj-C, etc) then im going to go into Unity and mess with it so I can get more familiar with coding then I'll try to create my first game in SDK and then when I get to my platformer idea I think it would be better using unity(from what I saw with the tutorials its good) unless once I learn my way around SDK if I find it's(SDK) easier/better or more effective. Basically i might do a bit of flip flopping, but mostly I want to choose a program which I can really sink my teeth into and have a more fullfilling sense of accomplishment.
Sorry Im complicated lol but thanks everyone who helped here, this really helped and opened up my ideas alittle bit more.
Diablohead
01-22-2009, 04:03 AM
There's more than one language; you can use C# as well. Regular Unity has Boo (similar to Python) as a third option, but I don't think that works on the iPhone version at this time.
--Eric
Do you know if the Javascript part works on iPhones right now? a big plus to them if it does already.
AppStoreGamer
01-24-2009, 12:20 PM
Do you know if the Javascript part works on iPhones right now? a big plus to them if it does already.
Yes, the javascript feature in Unity works on the iPhone. (quite well I might add)
adgeman
01-27-2009, 02:06 AM
I'm in the same boat as a few others here as I'd like to learn a bit about coding to give iphone development a go but I've no idea where to start. I was looking on amazon and there seem to be a few books - can anyone recommend resources for me to try out?
Ironically I work for a very large games company and have designed a lot of games in the past but I've never got as far as coding them. One day perhaps...
shannonkay
01-27-2009, 02:35 AM
We use unity and my husband has been a programmer in the game industry for 7 years. He really likes it.
Diablohead
01-27-2009, 06:49 AM
Yes, the javascript feature in Unity works on the iPhone. (quite well I might add)
Great to know, thanks :D
vBulletin® v3.8.7, Copyright ©2000-2012, vBulletin Solutions, Inc.