Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

zippo

OpenGL OpenGL vs. Direct3D

This topic is 6928 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I''m really getting into C++, and am looking forward to graphics programming, primarily for games (of course). I want to learn some of the APIs out there that can help me get into 3D programming (1st person mostly) and was wondering what preference you all had as to which API you''re most comfortable and happy with. I hear that OpenGL is easy to pick up on, while Direct3D, on the other hand, is becoming ever-more popular as windows games are becoming the "thing". Should I learn one over the other, should I learn both, or perhaps there''re more APIs out there worth giving a look into? All comments are welcome. Thanks! ZiPPÕ

Share this post


Link to post
Share on other sites
Advertisement
Have a look at other topics in the forum and you will find that lots of people have asked them same question you are asking now time and time again !!!

I say ... OpenGL. There is no reason just use it !

Share this post


Link to post
Share on other sites
If you''re just starting out I think most people agree that OpenGL is easier to understand at first. I not saying that Direct3D sucks or OpenGL is better, but just that it is easier. I have seen wrappers for Direct3D so that it can be accessed similar to OpenGL. It''s hard to tell which has better performance since they both use hardware acceleration and performance varies from computer to computer.

Share this post


Link to post
Share on other sites
Let me put it this way - It took me a month to do with D3D what I did in a day with OpenGL.

Here''s how Carmack said it:
With OpenGL, you can get something working with simple, straightforward code, then if it is warranted, you can convert to display lists or vertex arrays for max performance (although the difference usually isn''t that large). This is the right way of doing things -- like converting your crucial functions to assembly language after doing all your development in C.

With D3D, you have to do everything the painful way from the beginning. Like writing a complete program in assembly language, taking many times longer, missing chances for algorithmic improvements, etc. And then finding out it doesn''t even go faster.

Share this post


Link to post
Share on other sites
Thanks for the info guys! I should have figured that others would have already asked this question on the board. Wasn''t really thinking ahead on that one.
Well then I suppose I''ll do what I was already thinking of doing: getting started on OpenGL and work my way up from there. Thanks!

Z¡PPÕ

Share this post


Link to post
Share on other sites
Nonononononononononononono!!!!!!!!!!!!

Why D3D is better:
More compatibility with windows and directdraw, integrated with directx so you can use the other directx APIs for sound, input etc.; more driver support, OpenGL drivers are often incomplete or not available for graphics cards, while direct3d drivers are almost universally available. Don''t do openGL. It''ll just make things more complex later when you have to use Win32 SDK for sound and input: no hardware mixing. (You may think I am a bit biased, and in truth, I am, but I think directX is easier than OpenGL. Don''t tell anyone). Well, that''s all.

Share this post


Link to post
Share on other sites
So, if I happened to learn OpenGL, retorically speaking of coursem =), and I wanted to implement the type of things DirectX does, 2D graphics, .wav sound, .midi sound, input, internet play, what would i have to use for each of those?

Share this post


Link to post
Share on other sites
I would say play around with OpenGL for now, to get the hang of 3d stuff. But when DirectX 8 comes out switch over to D3D. Although I hate to learn a whole new API, with Direct3D8 Microsoft will blow OpenGL away..

----------
Drago

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!