A little API worry.

Started by
7 comments, last by DyNaMiX 20 years, 7 months ago
Hi all. Now that my skills are getting better at C++ I''m going to go out and get my hands diry in some API programming and see if I can code some pretty 3d stuff. However there is a worry I have. I''m obviously going to choose out of DirectX or OpenGL. I found OpenGL looked much easier for me to understand however I know DirectX is pretty big on PC games, which is what I am interested in coding for. I see articles every now and then that talks about the future of DirectX one day knocking OpenGL out of the big league and was wondering what I should do. I''m worried I''ll spend years perfecting my skills at OpenGL then suddenly DirectX knocks it out of the game and I am left with knowlege of a dead API. Is any of this stuff true? "It''''s not the destination that''''s important, but the journey."
"It''s not the destination that''s important, but the journey."
Advertisement
You will not be wasting your time if you learn opengl instead of directx.

This is a hotly contested topic and the source of many flamewars. Don''t be suprised if this thread is closed before it explodes.
No big problem really. It will take some time to become an "Expert" in OpenGL, and if you are forced to change api, I don''t think it will become such a big problem, because you will then become such a good programmer that an api change is merely a bump in the road.... I''ts like going from c++ to java to c#...take a bit time, but I''ts doable.
Actually, if you compare say OpenGL 1.3 or 1.4 with DirectX 8.1, you''ll notice the main difference is kinda syntactic (DirectX is kinda more object oriented, or at least the more C++-ish API makes it look like it).

The main difference probably comes down to the documentation and/or tutorials. Even if there are more DirectX tutorials available than before, there are still tons of OpenGL tutorials.
The most important thing to understand whether you are learning OpenGL or DirectX is 3D concepts. Once you know that, learning the API becomes easier.


First make it work,
then make it fast.

--Brian Kernighan

"The problems of this world cannot possibly be solved by skeptics or cynics whose horizons are limited by the obvious realities. We need men and women who can dream of things that never were." - John Fitzgerald Kennedy(35th US President)
"None of us learn in a vacuum; we all stand on the shoulders of giants such as Wirth and Knuth and thousands of others. Lend your shoulders to building the future!" - Michael Abrash[JavaGaming.org][The Java Tutorial][Slick][LWJGL][LWJGL Tutorials for NeHe][LWJGL Wiki][jMonkey Engine]
quote:Original post by DyNaMiX
I''m obviously going to choose out of DirectX or OpenGL.

"It''s not the destination that''s important, but the journey."


OpenGL is C
DirectX is C++
quote:Original post by Anonymous Poster
quote:Original post by DyNaMiX
I''m obviously going to choose out of DirectX or OpenGL.

"It''s not the destination that''s important, but the journey."


OpenGL is C
DirectX is C++


Really? Oh gosh this could be bad.

"It''s not the destination that''s important, but the journey."
No, the anonymous poster is just being stupid. Direct3D is slightly more object oriented than OpenGL, but both can be implimented in both. Calling Direct3D object oriented is like making a global class holding all of your global variables and saying you''re using object oriented techniques. Just go with OpenGL, because if/when Direct3D takes over, it will be very different from what it is now.
-~-The Cow of Darkness-~-
Ahhh I see what you mean now. Well OpenGL it is.
Thanks for the advice guys.
"It''s not the destination that''s important, but the journey."

This topic is closed to new replies.

Advertisement