OpenGL vs. DirectX?

Started by
19 comments, last by slayemin 14 years, 6 months ago
Hello all, I've been wondering, what is the difference between developing things with OpenGL or DirectX? Is it harder to code things in OpenGL? The reason I'm asking is because I want to start developing games with XCode on the Mac (once I get an iMac, of course), and I read that I would need to use OpenGL since DirectX is a Microsoft-only technology. I figure it won't be too hard once I learn. Can anyone recommend a place for me start (books, websites, etc.,)? Thanks!
Advertisement
I'd go all the way with RopeG DireLx.
[size="2"]I like the Walrus best.
Well, you are correct that DirectX is a Microsoft-only technology. It is also an important distinction to know what you are comparing. DirectX and OpenGL cannot be directly compared; at least not like that. Only one portion of DirectX is directly comparable to OpenGL, and that is Direct3D. That is the actual rendering aspect of the DirectX. The rest of DirectX includes technology for controlling player input, networking, sound, etc. OpenGL does not have equivalents for those parts, thus you must use other solutions.
Quote:Original post by jackolantern1
Well, you are correct that DirectX is a Microsoft-only technology. It is also an important distinction to know what you are comparing. DirectX and OpenGL cannot be directly compared; at least not like that. Only one portion of DirectX is directly comparable to OpenGL, and that is Direct3D. That is the actual rendering aspect of the DirectX. The rest of DirectX includes technology for controlling player input, networking, sound, etc. OpenGL does not have equivalents for those parts, thus you must use other solutions.


So in other words, OpenGL is harder to program in? I can see why Microsoft invented DirectX, then.
Quote:Original post by Yodaman Jer
So in other words, OpenGL is harder to program in? I can see why Microsoft invented DirectX, then.


Not really. Its greatly dependent on which style you prefer. What he's saying is that you'd want to compare Direct3d and OpenGL, not DirectX and OpenGL.
Quote:Original post by Rycross
Not really. Its greatly dependent on which style you prefer. What he's saying is that you'd want to compare Direct3d and OpenGL, not DirectX and OpenGL.


Ah, I see. Thanks for clearing that up. :)

Does anybody have any recommendations for books on learning OpenGL? I know there are several books, I just want to know if anyone has a specific one to recommend.
Quote:Original post by Yodaman Jer
Quote:Original post by Rycross
Not really. Its greatly dependent on which style you prefer. What he's saying is that you'd want to compare Direct3d and OpenGL, not DirectX and OpenGL.


Ah, I see. Thanks for clearing that up. :)

Does anybody have any recommendations for books on learning OpenGL? I know there are several books, I just want to know if anyone has a specific one to recommend.


Actually, I recommend reading a book based on OpenGL ES instead of regular OpenGL. Currently, a lot of information on OpenGL teaches bad practices such as immediate mode.
http://www.amazon.com/Beginning-OpenGL-Game-Programming-Benstead/dp/159863528X seems to start the user off with OpenGL 3.0 principals, and is relatively cheap.

I would also recommend getting a copy of the red book for reference for pre 3.0 functions, and a book on GLSL for showing you how to do shaders.

Good Luck!
And remember, there are some subforums here if you have specific questions.
haven't seen one of these in a while...
Quote:Original post by Rycross
Quote:Original post by Yodaman Jer
So in other words, OpenGL is harder to program in? I can see why Microsoft invented DirectX, then.


Not really. Its greatly dependent on which style you prefer. What he's saying is that you'd want to compare Direct3d and OpenGL, not DirectX and OpenGL.


Exactly. It is not that it is harder per se (that is a personal opinion question, and you will get tons of different answers), it is just that DirectX has almost all basic game building blocks under one roof, where OpenGL coders have to use different components. It doesn't really make it much easier or harder to code. You just have to decide on and find the components you need. Some people don't use 100% DirectX anyway, and prefer to use different solutions to replace some portions of it.

neither, use glide.

*giggles*

ok, in reality, it doesnt matter which API you use, both are so similar that its like arguing over whether blue, or a slightly different shade of blue is better. its still fricking blue.

learning both is advantageous.
your never as good as they say you were, never as bad as they say you was.

This topic is closed to new replies.

Advertisement