Getting started at Game Development
I want to get started at game development. I have read a lot of articles, but didn't get far. I'm studing computer science and have experience in C++, one semester in Java, .NET, (even assembler, but I won't start with that^^)
I want to develop "small" games, like Tetris and later on some kind of jump and run.
I would like to work with visual aspects ("game GUI").
I read a lot of opinions but I don't know whether to start with C++, C#, Java , I've also read about DirectX and Flash. (I have no problems to learn a new language.)
and I didn't 开发者_StackOverflow社区find nice tutorials.
--> which language, tutorials?
Thanks in advance,
Tyzak
I would recommend XNA. It is a .NET framework for making games on Windows, Xbox 360 and Zune.
It is easy to get started and you can make small games like Tetris within a very reasonable time frame. I have used it to make a couple of Xbox games for my son.
There's plenty of information available to get you started. A good starting point is the education section of the XNA Creator's Club.
Additional info in this question: The good 3D GUI engine
Since you have some experience with C++, follow the tutorials of ClanLib or SFML. I am hearing good things about both of them.
First get something very simple working. A program that draws a black screen is a good starting point, then add an image, make it movable, etc. Only after you have the fundamentals working, start thinking about a game.
+1 for XNA. If you use something like IronPython for scripting, you have basically a full toolkit right out of the box.
For quick results, Flash and AS3 scripting is good to go. AS3 articles can be harder to find, but there is a good book - the Flash Game University.
Here's a list of recommendations for language/platform-library pairings
- C#: SDL.NET or XNA - both are high level abstractions of input and graphical libraries
- C++: There are many, including ClanLib, and SDL, among many others. You can even find a curse library and write a roguelike.
- Java: Java has a number of 2D engines, and there's the Java Monkey Magic engine for 3D games programming.
- Others: Unreal scripting, Unity3D featuring JavaScript/Boo/C# scripting
Of course, obligatory link to the mega-game-resources site: GameDev.Net
Agree with that there is some 'basic' stuff that you have to understand before creating a game. Think of it as if a game consists of managing the gamestate, keeping all objects, perform interactions, draw screen, use file i/o, work with keyboard/mouse, make objects responsive to the key/mouse, have infrastructure of its own in general. Yoг may be interested in Processing (quite simple, do not have to think of a tonn of unrelated stuff like Windows message managing in C++), based on Java (and actually is Java), can be seen at http://processing.org. The simple but powerful environment would get you started quickly. Has many one-page example covering the exactly kind things required in games, constant updates and a very friendly community. Later you may go back to C++ or stick with Java, since Processing can be easily plugged into Eclipse providing one of the greatest IDEs and the Java power.
I got the most benefit using OpenTK, an C# Wrapper for OpenGL. You're able to integrate OpenGL Panes into your Windows Forms and change their behaviour using buttons and all the stuff that is given by windows forms.
Perfect tool to create simple tools for the first time.
精彩评论