Is there any significant advantage, for the sake of learning, to using DirectX or OpenGl over a game engine?
Well,开发者_StackOverflow I'm a system developer with my share of knowledge about programming/development (mainly in Java and .NET), yet I have a great desire to learn and start game development. Some years ago, I started learning it, but real life changed the course of things and I had to focus my attention to LOB applications. Now I want to really learn game programming, and I'm confused whether to learn through a engine or API like OpenGL and DirectX. Time is no problem to me, and as an enginner, I have good knowledge on math and physics. So which path should I walk now?
Thanks for the attention, Diogenes
The main (and to a certain extent, only) advantage to learning DirectX or OpenGL versus a game engine is you will gain a very in depth understanding of 3d development, including graphics, shadows, model loading, etc. However, it'll take you a lot longer to make anything useful, whereas with a game engine, you can make a game in a few days (and make a better game in a few weeks/months/years). So, if you want to learn all the complex details about how 3d graphics work, then learn DirectX or OpenGL, if you want to make games, use an engine.
As for DirectX vs. OpenGL, it mostly comes down to portability. DirectX is almost purely Windows, while OpenGL is extremely portable (however, OpenGL has about 50 variations, so it's hard to say which version of it to learn...)
精彩评论