3D engines are easy, the problem comes from optimizing them. Most games have millions of objects on the screen at once. OpenGL can render then all, but it will take forever. The "engine" actually sorts and clips the parts out that don't need to be drawn. That's hard and requires you to know how to use and implement an Octree Data Structure, and BSP mapping.
C++ is a good language to learn, but there are some things in it that make it difficult to understand at first (pointers, virtual methods, polymorphism, mutlithreading) Most programmers use smart pointers, but when working with graphics, that's impossible. I recommend writing things like AI and such in C++, but using something a little more powerful than OpenGL for the actually graphics engine. Dark SDK is a C++ wrapper around the Dark Basic engine. I'm pretty sure that Dark SDK is free, and it's easy to use and does clipping and such for you. The only problem is that it uses the some-what deprecated DirectX 9.
|
|
Bookmarks