Skills needed to write a decent 2D game

vickyrare

vickyrare
Apr 21, 2009
103
0
21
Karachi
In order to write any reasonable game, a person should possess these following skills. I am talking about 2D games here, but same applies to 3D games as well.


  • Understand how to write C and C++ programs proficiently, specially in the area of Object Orientation and memory management. You must know about class inheritance, polymorphism(virutal functions) and encapsulation.

  • Must understand how to compile and run programs written in C and C++

  • Must be able to write libraries.

  • Must know how to use 3rd party libraries.

  • Understand the architecture of DirectX as nearly all games on Windows platform are written using directX.

  • Understand the architecture and design of WIN32 API (aka windows programming).

  • Must know about how to version control your code.

  • Good concepts of mathematics are essential.

Start with something really simple, you cannot program any decent game in the first go. May in the start write a tetris or a arkanoid game (also called blockout). Try to get ideas from what others have written, don't just copy and paste. Game is very complex piece of software. A programmer know about everything. A game programmer knows everything about everything. You cannot any good game in few days. You probably need a team to write a decent game.

If anyone need help, i can provide all the necessary good books.

I myself still learning to write a decent game. So far i have written Tetris in Java, which i have already shared on Pakgamers.

From last 3 years i am pretty much busy with my job, so don't have much time to spent on game programming. Right now i am writing a clone of RoadFighter (popular game from NES days). Its half done, i am aiming to finish this by the end of the year. Once finished i will post the game + code here. Its a pure clone, as i am using sprites directly from the original fighter, but problem for me is that i am no artist, so have to use others sprites.

I know there are many people on PakGamer who just crack some others work claiming that they have programmed it. My work is little but all is written by me. Write a full fledge game, don't show any demo.

Start from basic, write a 2D game. Once you have got a good game under your belt, then head for doing some 3D work.

Useful links:


  1. http://www.pakgamers.com/forums/pak...tetris-written-java-complete-source-code.html
  2. http://www.pakgamers.com/forums/pak...vering-windows-directx-games-programming.html
  3. http://www.pakgamers.com/forums/pak...teach-yourself-game-programming-24-hours.html
  4. http://www.pakgamers.com/forums/pakistani-games-developers/29083-version-control-cvs.html
  5. http://www.pakgamers.com/forums/pakistani-games-developers/29003-what-build-system.html
  6. http://www.pakgamers.com/forums/pak...s/28674-mathematical-introduction-opengl.html
  7. http://www.pakgamers.com/forums/pakistani-games-developers/28967-official-guide-learning-opengl.html
  8. http://www.pakgamers.com/forums/pak...-beginning-math-physics-game-programmers.html
Some of the stuff is hosted on facebook, so you need to be on facebook to access it.
 
Last edited:

Naminator

Talented
Jun 5, 2008
78
0
11
Good post. Though you're really limiting options here, you could use other languages like Java and other graphic libraries (some very easy to use) like SFML or SDL.
Oh and what language and graphics library are you using to make that clone?

And here's the best advice of all, make this website your home: www.gamedev.net
I intend to write a 2d game myself this summer after exams are finished using C++ and directx.

First thing which I'll have to do is make my own 2d graphics interface over directx. I'll write more on the game when I actually start making it.
 

vickyrare

vickyrare
Apr 21, 2009
103
0
21
Karachi
I am using C++ and DirectX. I am not using anything else other than C++ and DirectX. I have written my own 2D rendering stuff. Java is good to write very simple games, but for my purpose i want to so something serious. I have already used Java for one of my clone game (Tetris). If you want i can share my 2D rendering stuff here.
 

Rapchik Killer

Well-known member
Jan 18, 2007
1,263
0
41
34
Karachi, Pakistan
If you really want to tap the 2d market for pc.. then i suggest you learn shader language and implement shaders with 2d and bring 2d to the next level by something like realtime dynamic lighting.. another option i can suggest is symbian programming.. try making 2d games for cellphones.. accomplishing any of these two can land you to a decent job imo..
 

Naminator

Talented
Jun 5, 2008
78
0
11
yeah but I'm going to use the 2d game to get familiarity with directx and game development before moving onto 3d.
@vickyrare: I'd love to see that code if you don't mind....
 
General chit-chat
Help Users
We have disabled traderscore and are working on a fix. There was a bug with the plugin | Click for Discord
  • No one is chatting at the moment.
    NaNoW NaNoW: ....