Where to start 3D game programming?

Started by
17 comments, last by Gl_Terminator 12 years, 8 months ago
Hello guys!
I looked around the web but i realy didn't find anything that realy helped me.. I found stuff like DarkGDK is this something to have ?
Mostly i want to learn game programming with OpenGL since i realy want the cross platform feature.. So is there any good place to start with OpenGL game developement?

I did check some leassons from youtube and also just normal sites like blogs.. But it feels like when theese people show me how to draw a 2D Flag or something like, Damn this is hard.. I need more research about OpenGL and maybe more learning first..
Advertisement
To start learning 3D Game Programming, you should start learning 2D game programming, and work your way up. Don't jump right into something you have no knowledge of, get your feet wet in some 2D stuff first.

And before that make sure you understand basic computer programming, if you want cross-platforming I suggest learning C++, if you already know it then disregard this.

As far as what kind of API to use I suggest SDL. it's pretty simple to use, great for 2D games and it has OGL built into it so it can be easy to jump from 2D to start learning 3D OGL when you feel your ready.

Hope this helps.
If you are just starting out with game programming then I would have to agree with what doombunny3 has to say, start with some easy 2D games and move your way up. If you have already done that then you can start with 3D games. 3D graphics are just one part of what goes into making a 3D games there are a lot of other things that you have to consider like physics etc. I would personally recommend making a simple space shooter or something like that to begin with as it is as bare bones you can get in 3D games without worrying about other aspects.Here is something that you can use for learning Opengl http://www.arcsynthesis.org/gltut/index.html
Thanks for great answears!
This brings me another question.. Doombunny says SDL is great for 2D games but i've heard Allegro is also good.. Which one is best for game programming?

Also.. I did write some 2D games before i did ask this question.. But i guess maybe i should make some more before going into the tough stuff..
If theres an openGL tutorial that teaches some 2D, just do it. Thats the basics of getting used to openGL, you cant expect to start creating moving 3d shapes with shadows and all that in the first line of code. You have to start from the beginning.

also, darkGDK and OpenGL are different. Dark is a game development kit, it is not pure openGL programming.
Never, ever stop learning.
- Me
So its more valuable for me to learn OpenGL than things like DarkGDK?
I'm assuming that since you are looking at SDL and Allegro for programming 2D games that you know a decent amount of C/C++. I have used Allegro for 2D games and it's a good library,I can't say anything about SDL since i have no experience using it. Have you thought about using XNA for making games, I'm saying this because it makes it very easy to create 2D as well as 3D games using it and since you know some C/C++ the learning C# would be relatively easy. Also it takes away a lot of the low level stuff and lets you concentrate on just making the game which in the end is the main concern :)

So its more valuable for me to learn OpenGL than things like DarkGDK?


What are you interested in? Building games from the low level up? Or being a higher level designer?

Using OpenGL will force you to write a lot of engine code... youll learn alot, but its highly technical and will take longer to make games. If youre more about the finished product and flashy games and you dont care about what happens on the lower level, use an engine.

Only you know what is valuable to you.
Never, ever stop learning.
- Me
Can i read about making engines or is there som articles i can read about them? I am realy intrested in learning so much i can from this.

Can i read about making engines or is there som articles i can read about them? I am realy intrested in learning so much i can from this.


I wouldnt concentrate on "making engines"... just make games using a lower level framework.. and you will learn about engine stuff. My advice is to grab Microsoft XNA. Its a nice library that will help you do 3D stuff, but it wont cover up all of the details like a DarkGDK or Unity will. For me, I really like to mess around with tech, I tried out Unity... and it was just too far removed from the level I want to work at. Programs like that are targeting two types of audiences in my opinion.. Lone developers who just want to make games and dont want to worry about anything that doesnt interest them on the lower level... and teams of developers with artists and designers who need to be able to get stuff done and prefer to do things in a GUI environment with rapid prototyping... XNA does enough so that you dont need to go through pure DirectX calls, but it just leaves you alone and lets you be a programmer and learn everything about games from the ground up. For me, thats the fun of it.

You can definitely be interested in both low level code and making finished games, biut you just need to adjust your expectations. By starting from the bottom, you have ALOT more work ahead of you than someone who is using an engine has. For me, my main interest is 2D games, so it helps that I dont need as much functionality as modern 3D games do. Because of this, I can use a lower level framework and be quite productive. If my goal was to make modern style games... something like a 3D shooter, doing it the way I work now would be ALOT more work.
Never, ever stop learning.
- Me

This topic is closed to new replies.

Advertisement