hi guys, i dont know if its appropriate to post such topic like this,
i have some c++ basics(i dont know my current level but i understand templates, recursion, some basic of STL like queues stack etc (on the way learning map), linked list, binary trees, and some OOP stuffs)
im currently learning on my own (im a student of accounting major) and i dont know where to go (in this case learning c++) , so i tried to do some search about c++ and found out that c++ dominates most of game programming, from further search i found out that "OpenGL" thing, but i dont know if im qualified enough to learn it.
so my questions are :
- what are the requirements to learn OpenGL?
- do i need to learn GUI first?
- there are many OpenGL tutorial books, which one u recommend for beginner like me?
A note, though, OpenGL is kind of a level lower than, say, using a graphics engine. If you're looking at making games, I'd start 2D first. There's a lot more going on than graphics.
If you truly want to go 3D, why not use an engine that interfaces with OpenGL, such as Ogre3D, rather than jumping in at the deep end?
I don't know that it's particularly necessary to have strong knowledge of C++. At least, I know I'm not "strong" in C++, but I've still been able to create my own models in 3dsMax and then have them appear in a program that I wrote.
When you're talking about a 3D program, I would say there are three things going on. 1)The logic of your program, 2) handling messages (mouse clicks, etc), and 3) the 3D rendering. OpenGL does the rendering only, so you will need something to provide a context (create a window) for OpenGL to use. The same library you used to create the context (windows.h, sfml, sdl, glut, etc) should be able to at least handle the messages. The logic is up to you of course.
I'm stuck on the lighting chapter. The source uses GLUT, which is an old library. Since I'm not using it, I actually have to create my own models. I'm basically doing a switch from .3ds to .dae, so I've stalled at the parsing of the .dae while I figure out exactly how I want the data to be presented to my program.
erm okay 2D game i think is a good start for beginner for me (it slipped of my head because i was too "burned out" while reading about 3D games with c++)
do you know any good tutorial how to start a 2D game for beginner?
If you truly want to go 3D, why not use an engine that interfaces with OpenGL, such as Ogre3D, rather than jumping in at the deep end?
i dont really get it , so Ogre3D is like Qt(gui) but in this case Ogre3D using OpenGL?
A 2d game is just logic behind visuals. Find an api that you like and learn how to draw/paint. If you can get basic shapes being drawn, then start to think about how your game gets played. When you're making your classes, try to make the connection to the drawing as minute as possible. This way when you decide to go 3D, the logic of your game is already there.