The difference between Game Programming,and Basic Programming
Hey guys I know you have answered this question too many times already.But I still do not understand the difference between Game programming and Basic Programming ...I am obviously new at this and I really want to do Game programming as a career its my dream and my mom got me the C# in a nutshell book and i have been practicing in Unity 3D,and none of the topics or examples in the book make any sense to me,Because I do not see anything in common between the two.I have just finished high school and want to practice over the holidays but do not know where to start...I mean is it okay to copy other peoples code on the internet for practice or how does it work.I still do not know anyone that wants to do the same thing as me so I am very lost and do not know how everything works still.I know this Question is long and also covers a lot of topics but i really just need some help.
Comments
The code is the same between business and game development but the differences are in how the code is executed and the namespaces you use.
Most business applications are event-driven, meaning no code executes until a user clicks on a button or something or loads a webpage. The code is executed and then the application goes back to a waiting state until the next event.
Game development normally works in a game loop; executing over and over again building an image that's sent to the screen multiple times a second (from which you get 60FPS more or less).
I think learning programming by jumping straight into Unity3D is a great challenge. You'll learn the same programming skills by rather using a tool like [url=http://yoyogames.com]GameMaker[/url] first and making some prototypes using that.
If you can get to one of the Global Game Jams in January 2015, you'll learn a heap of programming.
All the code and assets have to be uploaded to the competition along with the game; so it's also a great source to see how other teams around the world implemented their games.
Global Game Jam (or any gam a great low risk opportunity to learn. All you risk is a weekend of your time. You might make a game, or you might fail gloriously, but in either case you will learn from the experience. You might also have a good time meeting other people who are passionate about making games.
I just had a look on Lynda.com (costs $25, then you can watch unlimited tutorials for a month), and as an example, you could start with a course like this:
http://www.lynda.com/JavaScript-tutorials/Foundations-of-Programming-Fundamentals/83603-2.html
And then follow it up with something about Unity:
http://www.lynda.com/3D-Animation-Games-tutorials/Unity-43-Essential-Training/150613-2.html
Once you have these basics, you should be able to really start playing around and make some cool games of your own. If you find you like this programming thing, then you can start reading up a bit more about it (for example look at the other courses named "Fundamental" under: http://www.lynda.com/Programming-Foundations-training-tutorials/1351-0.html)
I haven't gone through the courses listed above, so I can't vouch for their quality, but it seems that they should teach you what you need to get started. Perhaps other people have good suggestions for similar courses/tutorials that are free instead :)
Let me check if JHB is setup yet and then I can give you the link to join
It's like maths, and solving differential equations. Or carpentry and making cabinets. Or cooking and making an apple pie. Game programming is a specific application of programming. Or a sub-discipline, if you like.
You will need to learn programming in order to be a game programmer. So yes, teach yourself how to program, then, when you have a basic grasp of it, you can advance to "game programming for beginners" tutorials and books. It'll take time, though.
There are plenty of resources on these forums for you to learn how to Make A Game without having to do any real programming at all. Perhaps you should look into just getting yourself familiar with what it takes to make a game and the processes involved with that by picking up something like GameMaker before you decide that being a "game programmer" is what you actually want to do.
what a difficult question to answer, I've been asked this question a 100 times and perhaps I'm not a right person to answer it. Maybe they should have asked me the following question: "which or what books do I have to read that will enable me to make games?"
Ok I don't really have all the answers since game dev is a very brought field, maybe the questions I would have like to be asked are the following
"I wana make games for android, where should I start"
"I think windows phone has awesome graphics how do I make games for it"
. "I saw somewhere on tv saying that html5 is cool what do u think"
Okay this were not the questions that i was asked so lets go back to the main question "how to become a game programmer". My reasons for not answering this question is because I never made a commercial game, all my friends ever saw was some demos on my phone or some crazy dummy engines they've seen when they try to hack my computer, so they assume i have all the answers.
Game programming as a part of game development is a very big subject and there are many sub disciplines within itself. I myself have read more than 200 books and I feel like I've only touched the surface. Some of the disciplines include, computer graphics, gameAI, engine architecture, rendering, shader programming, game physics, augmented reality, only to name a few. Although I have read more than 200 books, the are only few useful ones or I'll just say readable ones, so I'll just name few books that are some of my favorite ones, the ones that I read and never got stuck, so I'll not waist time trying to lecture you on which language you should use because at this time and age any programming language is well suited to write games.
Here is the list of some of my favorite books from beginners to pros
Html5
1. Foundation game design with html5 and JavaScript (2012) - Rex van der Spuy
2. Pro android web game apps using html5, css3 and JavaScript (2012) - Juri Bura and Paul Coates
3. Pro html5 games (2012) - Aditya Ravi Shankar
Flash
1. Foundation game design with actionscript 3.0 (2012) - Rex van der Spuy
2. Essential guide to flash games (2010) - Jeff and Steve Fulton
3. Flash multiplayer virtual worlds (2010) - Makzan
4. Adobe Flash 11 Stage 3D game programming (2011) - Christer Kaitila
Android
1. Beginning Android games second edition (2012) - Mario Zechner and Robert Green
2. Game and Graphics Programming for iOS and android with openGL ES 2.0 (2012) - Romain Maricchi Foino
XNA
1. Learning xna 4.0 (2011) - Aaron Reed
2. Windows phone game development (2010) - Adam Dawes
3. Professional windows phone 7 game development (2011) - Chris G. Williams
4. Windows Phone 7 xna Cookbook (2012) - Zheng Yang
5. 3d graphics with xna game studio 4.0 (2010) - Sean James
6. Xna 4 3d game development by example (2012) - Kurt Jaegers
DirectX
1. Introduction to 3d game programming with DirectX 9c, 10 and 11 (2006, 2008, 2012) - Frank Luna ... Visit d3dcoder.net for more
2. Character animation with direct3d (2009) - Carl Granberg
3. Multi treaded game engine design (2011) - Jonathan S.Habour
4. Game Coding complete 4th edition - Mike McShaffry
AI
1. Introduction to game AI (2011) - Neil Kirby
2. Artificial Intelligence for games (2009) - Ian Millington
3. Behavioral Mathematics for Game AI (2009) - Dave Mark
4. AI and Artificial Life in Video games (2008) - Guy W. Lecky Thompson
5. Programming game AI by example (2005) - Mat Buckland
Mathematics
1. 3d math primer for graphics and game development(2011) - Fletcher Dunn and Ian Parberry
2. Essential Mathematics for games and interactive applications(2008) - James M. Van Verth and Lars M. Bishop
3. Mathematics for 3d game programming and computer graphics (2012) - Eric Lengyel
I will not give a review on this books since people who are more knowledgeable than me have already done that. Just go to amazon.com and search on a particular book, the reviews there will tell you whether you like the book or not.
It you want to ask anything else, I'm always here¿¿¿
So first point. The best way to learn to make games is to make games. It's best to start with a tool that makes this easier. Game Maker: Studio and Unity3D are the best options as you'll find many people in this community who are highly proficient with those tools and are able to answer queries that you may have with it.
Second. You don't really need to understand programming in order to make games. I've seen some spectacular games by people who didn't know that you could nest if statements! While that's said you said you want to learn programming. And while picking up a book is likely to help since it will present a certain quantity of useful information: you're lucky if you pick up a useful tidbit once every twenty pages. There are tonnes of tutorials for GM:S and Unity. You can work through a decent batch in about a day and will be able to use either engine with decent competence.
Third. Decent competence doesn't mean that you will be able to do most things, or really all that much. Chances are the first game you decide to do outside of the tutorials is going to be over-scoped or there is a technical challenge that you can't wrap your head around. Yet! All of this is prefixed with a yet. I, and most other devs, have folder fulled with prototypes that just never went where we thought they would. You leave these and move on, and as time goes on and you learn more you realize how you could have done that better, and then you work and you see how much you have gained since the last time you tried.
So how does this make you a better programmer? Well the best way to progress with a skill is to practice it. There is no magic bullet, or book, or video that will make you awesome at programming. It's all grit and working things out, and fucking up — a lot. But every fuck up you make is something you can learn from. So keep on practicing! And remember.
You don't get awesome overnight; simply less shit every day.
This is true of everyone.
Here is the full name of the book.
"foundation game design with html5 and javascript"
My little brother who's in grade 9 has finished 100 pages without my help. And you don't even have to be good in mathematics to read the book.
After finishing the book, I'll advise for the next one.
It'll give you enough guidance to make something, even if you don't fully understand everything.
Something else worth noting is that a Pluralsight subscription gives you access to http://digitaltutors.com/ too which has tons of graphic and game focused stuff.