Okey, so since I was a little kid I allways would like to make my own game ! and I allways liked to fix gameservers, Teams in games like Clans and Guilds and so on. Now to the point, me and my friend are going to educate us to make our OWN game. We thought about what the game will look like and stuff, I can tell you it'll be a multiplayer shooter game , but different from the others.
I don't want to tell about the game so detailed due to that someone may copy it. Well the thing I was wondering was , What language should we learn?? , should I learn 1 language and he 1 , or should both pick the same language? , Well , I think c++ is the best option , but I'm not sure ! , I'm a beginner and would like to know what the best language for making games is.
I guess c++ is a good start atleast? cause don't all programs use c++? and what's the difference with Java and c++? , well alot of questions but I'm really on to making a game , cause me and my friend talked about it for a very long time !
The school we're planning to go in educates some basics in c++ and web development the first year then the 2nd and 3rd you can choose what programming language you want to use so what should me and my friend choose (:?

Recommended Answers

All 20 Replies

C++ would be a good language to learn but its a big jump into the deep end (or can be for beginners) i would suggest learning java or c# to start with then once you have learnt that move onto c++.

I would suggest that you both learn the same language that way you can help each other learn and could do a joint project together. there would be no benifit to you both learning diffrent langauges.

I can only suggest you pick the language that you feel most comftable with for your finaly year. dont pick a new language if its going to affect your grades but make sure your going to learn from it.

I am working on a game myself with a couple of buddies... here's what I think would help.

C++/Java as mentioned above, I haven't tried C# yet but it's next on my list... As for an engine to make a game I would recommend the Unreal Engine... it has a lot of nifty tools that help with programming a game.

Though the Source Engine isn't too bad either.

C++ would be a good language to learn but its a big jump into the deep end (or can be for beginners) i would suggest learning java or c# to start with then once you have learnt that move onto c++.

I would suggest that you both learn the same language that way you can help each other learn and could do a joint project together. there would be no benifit to you both learning diffrent langauges.

I can only suggest you pick the language that you feel most comftable with for your finaly year. dont pick a new language if its going to affect your grades but make sure your going to learn from it.

So it's not better for me and my friend to choose different languages? I mean if both learn c++ we can't make the graphics etc? or am I wrong? , maybe you can look for a team on the forum to make the game later on? And what's the difference between Java and c++? which one is best for programming games? Allso my friend got alot of knowaledge of making websites , PHP , HTML, Dreamweaver etc.

Sorry fo being such a noob and ask so much but I just want to pick the right language so we can make our game successful.

If you are looking to make games I would go with C++/OpenGL or C++/DirectX or C#/XNA.

I have never used C# but since it is a newer language and since it was made by microsoft it would probably be very easy to make windows programs and games using their XNA framework.

From my experience C++ and OpenGL isnt that bad but you do need to play around with a whole bunch because the whole OpenGL library is written in C and sometimes it is a pain merging them together. Also just making a window in Windows with just C++/WINAPI takes many lines of code and is very specific to just making the window.

C++/DirectX is probably very similar to C++/OpenGL unless you use a good framework (personally I think GLUT for OpenGL is a total POS) but since I have never used it I can't really say.

If you have zero experience with programming let alone game making I think you should pick up C# and use the XNA framework to make the game. But first you will need to spend a good amount of time just learning the language and not even thinking about games as simple as tic tac toe. And if you plan on making a 3D game that requires a good grasp on Math and it is significantly harder than just a 2D game which can be difficult to make in the first place.


Just learn the basics very well because no matter what you are doing in the end you will be just stacking basic logic statements together to get the game to do what you want.

there is nothing wrong with learning by making games but defently start with a 2d game and something easy like rolling 2 dice and removing the number between 2-12

something simple like this will get you learning simple things like how to generate a random number how to print txt and load images etc

also with both of u doing the same language you should do something together to get used to OO by each of u writing a class but telling each other what you need so you have to work together to get them both to work.

and the diffrences between c++ and java and c# are the same as the length of a peice of string.

all of them have pros and cons its down to you what you prefur.

Okey guys , I think I decided to choose c++ , do you have any good , and very , very easy understanding guide? , Cause I don't understand all advanced guides on the internet cause I'm not from england and it's kind of harder to learn then. Atleast a guide that is very like noobfriendly.

I learned C++ from here and have found it to be a good reference website as well.

I would learn up to section Functions(I) then play around with input/output where you ask for name age and put it into a sentence or something basic like that. Get comfortable with the basics otherwise you will be lost later.

There are a few concepts that many new people find hard to grasp, such as pointers and memory references. When making small programs to learn these are not super important but later on these are huge and help with memory management among many other things. In other words look at them if you do not understand it the first time don't worry about it but do simple examples with them to understand how they work.

Good luck and remember to take it slow and right from the start I would recommend coding in a clean and easy to read format (don't be afraid to leave white space in code because no one wants to fight to read what you coded then try to find problems).

Hey, I am sort of a beginner as well. I have been teaching myself C++ for a while but am just starting to get into actual game development. The funny thing that I noticed is that no one here has told you that your not going to be able to start making a game right away. I am not the best programmer in the world but, I could make a program in C++, most of the things you will begin working on will be text based and eventually you will begin working with some sort of graphics. With C++ I am choosing to learn SDL and OpenGL as my library choices for game dev. Now anyone who is more experienced then I am correct me if I am wrong, but from what I have heard and read, once you have C++ down with text based you should start learning SDL then OpenGL. For SDL I suggest LAZYFOO http://www.lazyfoo.net/SDL_tutorials/ He has awesome tutorials which I am learning from now. This will teach you how to make a window and how to find user inputs with some basic output.

I think it doesn't matter that which language you or your friends learn,the .dll file can help you.And if you want,it's even possible for you to call your friends' program(Just like "system(Command)" in C++ language).So,do as you want.

Python is a great first language to learn! Also, if you're looking to get into game development right away. You can try Pygame, it's a Python module used to make great 2D games. But if you're looking for making 3D games, I'd recommended Panda3D.

have you tried (just for learning the basics) before creating a full blown game in any specific language, using a program such as FPS creator or Game maker 8? Game maker is free, and is a great way to learn the basics before starting from scratch.

As a game programming major in school, i found it INSANELY helpful to experiment in my free time with these programs out side of class. In class i was using xml, c++ and c#.

Try it :) It works. You want to make sure you completely understand the basics and how to set up different attributes of game play.
Also, id recommend spending some time focusing on semiotics, and analyzing gameplay and all that goes into it. There's just so much that goes into producing a quality game outside of which language you program it in. You can program "anything" but you need to ensure its WORTH programming.

Hope this helps at least a little bit.

there is nothing wrong with learning by making games but defently start with a 2d game and something easy like rolling 2 dice and removing the number between 2-12

something simple like this will get you learning simple things like how to generate a random number how to print txt and load images etc

also with both of u doing the same language you should do something together to get used to OO by each of u writing a class but telling each other what you need so you have to work together to get them both to work.

and the diffrences between c++ and java and c# are the same as the length of a peice of string.

all of them have pros and cons its down to you what you prefur.

This is good advice. Since you have choosen C++ I think a good start would be like this (using Visual Studio 10 express, free from Microsoft):

1. Write a "console" application and output "Hellow World" to the screen and wait for input.
2. Wrate a "class" inside the application that wraps up this.
3. Load the contents from a file and display it on the screen. Make the load function part of your class.
4. Write a windows application, WIN32, and load the file and display it in the window.
5. Understand message loops and how window's communicates with messages. Handle some of these like WM_SIZE.
6. Download the SDKs for Windows and DirectX
7. Momment of truth, initalize Direct2D and DirectWrite (windows vista or 7 only) and display the contents of the file in your window using DirectWrite.

At this point, you will understand how to load libraries, files, managing windows messages and doing real time rendering with Direct2D and DirectWrite. Play around making the dice game like mentioned above. Then, go look at the UnReal Engine as recommended and try to implement it (challenging for a begginer). Start small and work your way up so you are not discouraged. Get a book on C++ windows programming and also Direct2D. You will be making simple games for windows very soon :)

Im a beginner too and im wondering is there any program i have to download or something like that. Because i just want to make it as simple as i can.

This post should answer everything you need to know to get started in game developing, including what tools to use, language to pick and beginner resources to get started.

It's LONG, very LONG, which is why I don't simply post it here. That said, if you take the time to read through it, I guarantee you will be a lot further along in your path towards game development. I update it continuously, so it should stay current with current technologies and options.

One caveat is, I did not address Flash or game specific languages, such as GameMaker or DarkBasic, and if you want really quick results, those may be a good place to start as well.

I would add Unity to the list of choices. I recently created my first basic game in Unity. It took me about 4 evenings to get it to beta status.

The biggest plus to unity is its multi-platform. 2nd is that you can do a lot of stuff by drag and drop. 3rd, it has a built in physics engine which REALLY helps when you are just learning.

My advice is do something very basic (like pong) in Unity or another game creator tool first. Then move on to C#, C++, Java, etc. Otherwise, as already said, you will find yourself quickly overwhelmed trying to do the most simple task.

Cheers.

Python is a GREAT place to start. You can easily learn the fundamentals of programming with a powerful language that's almost as clear as English. It's been said, and I'm not saying I necessarily agree, that it would be possible to use only Python for anything you ever needed to program. Also as far as games go, Python has a great module/extension Pygame which makes building games a snap. I recommend checking out books like Python Programming for the absolute beginner "every chapter has a game", Head First Python "not really games but good books", and if you're up for some lighter reading then there's Invent Your Own Computer Games with Python, I haven't read it but it's designed for preteens-teens so it can't be too hard to learn from. Best of luck and happy coding!

My gf found some very good tutorials on linda's website, but this is good only if you want to create a game in flash.

You should start with Game Maker. Start with Drag and Drop and then move on to the GML that Game Maker offers to get the feel of programming. :)

I suggest studying C# and then using the XNA Framework... its microsoft's hottest thing... even im doing the same right now...

although i already have a good background in C++ and objective-C... but where there is a will there is a way...

Get a good book on C# and then go for XNA (once you have a good hold on the language), programming in XNA is done in C#.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.