Starting a school-project..

I am going to start with a project in school where I program 3D-engine but I first want to know a couple of things…

  1. What is the difference between 3D-engine programming and 3D-game programming??

  2. What do I need to know to be able to program 3D-engines?? c++, opengl(I guess ) etc.

  3. How long does it take to learn simple and advanced 3D-programming?, I have almost 2 years from now on, is that enough?

  4. do I have to install openGL someway to use it when I program 3D-engines?

  5. wich way is the best and maybe the fastest to learn? books, tutorials etc…

  6. Is there any openGL chat channals or communities somewhere? like irc, web etc…

  7. Is it a good ide to do a 3D-engine? .

I would be pleased if someone could answer to my simple and wierd questions…

i’m just a graphics programming beginner, but i’ll answer your questions as best i can.

“1. What is the difference between 3D-engine programming and 3D-game programming??”

a 3d engine is just one (although arguably the most important) component of a modern 3d game. other components include physics, sound & music, networking (for multiplayer games), and AI.

“2. What do I need to know to be able to program 3D-engines?? c++, opengl(I guess) etc.”

you need to be a very competent programmer. the most common language used for 3d engine development is c/c++, for the obvious reason of speed. so having a good understanding of c/c++ is obviously beneficial.

then you need to know one of the two APIs currently used for 3d engine development: direct3d and opengl.

beyond that, you need to understand the theory behind computer graphics, including how to implement these ideas on modern graphics accelerators using one of the APIs mentioned above, and the abilities/limitations of the various hardware accelerators.

“3. How long does it take to learn simple and advanced 3D-programming?, I have almost 2 years from now on, is that enough?”

obviously, there isn’t a hard answer to this question. i’d estimate that it takes a few months to get up to speed with the fundamental issues involving computer graphics, and then a few years to become well practiced and very knowledgeable about the subject in its entirety. of course, any estimation depends on the student and how much time he has to devote to the subject.

“4. do I have to install openGL someway to use it when I program 3D-engines?”

not exactly. everything you need for developing opengl programs should come with your compiler. everything you need for running opengl programs should come with your operating system. if you want to use extra stuff (such as glut), you’ll need to install it yourself though. what you want to make sure of, however, is that you stay up to date with the latest drivers for your video card.

“5. wich way is the best and maybe the fastest to learn? books, tutorials etc…”

i prefer the book method. for learning opengl, i’d recommend the OpenGL Programming Guide and the OpenGL Reference Manual, older versions of which can be found online for free. for learning 3d engine programming, check out Real Time Rendering (Moller and Haines) and 3D Game Engine Design (Eberly).

“6. Is there any openGL chat channals or communities somewhere? like irc, web etc…”

this is an opengl community i’m not familiar with any chat communities though.

“7. Is it a good ide to do a 3D-engine?”

for educational purposes, sure. don’t expect to make any money or anything though.

since SThomas has answered all your questions, i will point you to my site:
http://nomad.openglforums.com

it has opengl tutorials…

I’d also suggest trying to find people to work with on making the engine or atleast working at it in little steps…if you try to take it as a whole…wow…i’d be VERY impressed if you still want to keep making it in 2 months. It’s hard because it’s SO huge and to make everything work together is pretty tough. Also making your own little utility programs can take a LONG time. Like if you were doing a game engine…you have to make a level editor…that itself sounds HARD…but it’s just some little utility to go along with ure engine…it’s so little in teh whole scheme of things…but it’s pretty dang hard too!!! So remember…baby steps … or find people to work with…more fun that way!