How Should I Approach Game Development?

Started by
20 comments, last by Ph4tM4N 12 years, 9 months ago
Hey Guys,

So for the past week I've been looking around this forum looking for ways to approach developing a game. Games like Minecraft, Terraria, MapleStory, and Dofus have inspired me to create my own game.
I've have already listed ideas and concepts for the game, 2D side-scroller, in my notebook. I've also done some sprites for the game, though they still need work. So now at this point I want to decide upon a programming language. I'm currently leaning towards Java, because I hear it's a good place to start. I want to build this game from complete scratch if possible, though if I need to work with software like Game Maker or other software that's fine too. I'm really determined to develop this game before I go off to college next fall. Haha, I know it's a long time before then, but I want to get a good understanding of all this. Hoping to major in engineering in the computer field or something :)

As for learning and understanding a programming language or software are there any books you guys would recommend? Preferably a book I can buy from a local book store like Borders.

Other Information
OS: Windows Vista
Watched some tutorial on Youtube for a basic understanding of Java, though not much if none was really learned.
Messed around with Blender's Game Engine though most of my time was spent modeling. Managed to make a simple WASD movement and camera, though I didn't have to code anything.

My apologies if I failed to provide sufficient information or broken a rule.

- Key
Advertisement
I personally would prefer to use C++ but that's because I am most comfortable with c++, that and its faster than java. Yet another reason is because it is the industry standard for game programming (though that doesn't really matter for your case). I think c++ is easier to learn since you can learn procedural programming before diving into OOP (objected oriented programming). To me, it's easier to break down styles of programming and learn one then the other, so that you can utilize both effectively. Java is almost all OOP. Regardless though, a language is only a tool to build the game. I would say that it's not as important which language you use as the algorithms you build to drive the game. That's my view on the subject.

Nathan
Towards the top of the page, there's a link to the ' "For Beginners" Forum FAQ '.

Take a look at that and it'll get you pointed in the right direction as far as good languages to start the learning process with and some helpful info on the best way to ask us good questions so we can give you good answers as problems inevitably arise during learning and making your game. :)







Hey,

I've also just started game programming and it seems the c++ is the way to go. DirectX and OpenGL are both graphics libraries in c++ and they seem to crop up everywhere. If you want to learn c++, here is a good beginners intro and reference: http://www.cplusplus.com/doc/tutorial/. If you don't already have a c++ compiler and editor, window's visual studio is a one that I like. You can get the express (free) version here: http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express. Download the All in One ISO or just c++ express. One thing with visual c++ is that if you want to see your program output i.e. print statements such as printf or cout, you have to add the line: system("PAUSE") at the end of the main() function. This took me a while to figure out when I first downloaded visual c++. Good luck.
Thanks for the replies!

Tomorrow morning I'll take a look into C++ and check it out.
But one thing I don't really grasp is the concept of graphics libraries. I looked around, did some research, but what exactly do DirectX, OpenGL, and SDL do? They appear often in all videos games I've seen.
When ever I needed an image in Java I would just tell it where to look for it and where to display it. How do graphics libraries compare or what do I benefit from them?
[font=arial, verdana, tahoma, sans-serif][size=2]DirectX is a massive library that include input, sound, graphics, event handling and other features. Conversly OpenGL is about graphics, where you'll need additional libraries to handle what it does not cover and in most cases, especially when just starting out, you'll probably be writing your own simple routines utilizing only the bread and butter of the input capabilities from libraries like GLUT and SDL.

In regard to loading images, with Microsoft libraries such as the GDI Toolkit loading images is as easy as pointing to where in memory you want it to go and then calling the file in, but that says nothing of the other crud that you have to go through just to setup a window. [/font]

My advice would be:

1. Steer clear of win32 tutorials - they are overly cumbersome for those just starting out with little to be gained.
2. Google the heck out of every little thing that pops into your head, self-reliance is the most powerful toolset one can have when starting out
3. Pace yourself. With all the "AHAH!s that come along there tends to be about 40 or 50 "Bah"s and/or "Damn"s so cramming isn't going to be very productive

Best regards!
I would recommend C# ( It got Javalike syntax ) and It got a great Graphic framework ( XNA ) also SDL and SFML are both available to C# for cross-platform development.
C# is easy to get used to, friendly, good documentation.

It's woth checking out! :)
C++ is a very steep and tedious to learn and make games in!
Ah, thanks

In the "For Beginners" Forum FAQ it says that C# is a relatively easy language. Should I start with C# and maybe sometime from now move up to C++?

Ah, thanks

In the "For Beginners" Forum FAQ it says that C# is a relatively easy language. Should I start with C# and maybe sometime from now move up to C++?


I would start with C#. It's a lot like C++, so when you decide to move up it should be pretty easy. Well definitively easier than learning C++ as your first language, as you already would have learned all the concepts from C#.

[quote name='Key' timestamp='1310573814' post='4834887']
Ah, thanks

In the "For Beginners" Forum FAQ it says that C# is a relatively easy language. Should I start with C# and maybe sometime from now move up to C++?


I would start with C#. It's a lot like C++, so when you decide to move up it should be pretty easy. Well definitively easier than learning C++ as your first language, as you already would have learned all the concepts from C#.
[/quote]

Thanks for the reply.

What tools do I need to work with C#? I hear about XNA, but when I went to search it up on Google I links to like Visual Studio. Visual Studio = XNA?

This topic is closed to new replies.

Advertisement