OpenGL vs. Direct3D

Started by
56 comments, last by WitchLord 23 years, 8 months ago
I bet I surprised a lot of people writing such a topic Read the forum FAQ as I have just updated it with some info on ''OpenGL vs. Direct3D'' From now on this thread will be the only one that is tolerated when it comes to comparing the two APIs, all others I will redirect to this one and then close. I have also decided that I will not forbid personal opinions here, so post all you like. I will however not tolerate bad language and personal attacks. If I see anything like that in a post I will not censor it as I have done with other posts, I will delete it. So if you want to make your opinions heard you had better make it in a civilized tone. Let the flame war begin! (not to be taken literally ) - WitchLord

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

Advertisement
quote:Original post by WitchLord

I bet I surprised a lot of people writing such a topic

Yeah. I didn''t even realize it was you until I clicked it. I saw the siggy and thought "WTF?"

quote:Original post by WitchLord
Let the flame war begin! (not to be taken literally )




------------------------
Captured Reality
I''ve been told before that you can''t just ''sit on the fence''

Unfortunately, the choice between OpenGL and Direct3D is entirely a persnal opinion. I could end with that, but it doesn''t help anyone very much

My own personal preference is Direct3D, although I have used OpenGL before. Unfortunately, again, there are drawbacks...

Direct3D is much more difficult to setup correctly/effectively, you need to setup your surfaces, select a display mode (and create it!), attach a ZBuffer and more before you even begin to start drawing a usuable view

OpenGL allows you to create and start doing interesting things much more quickly and it is powerful (Quake3 uses it, what more of an example could you ask? ). Also OpenGL is much, much, MUCH more portable than Direct3D! (I personally write a rendering DLL, so if I do decide to port to another machine, I need only re-write that to support OpenGL).

However, once setup, Direct3D supplies you with much more information with the current system and your code can make decisions based on this (once written, the setup code can be reused, avoiding the tiresome setup). If you''re only considering Windows machines, place Direct3D above OpenGL (But, never put OpenGL outside the reaches of future development! Also if you choose to use OpenGL don''t ever put Direct3D out of reach from future development, you may never use it. But if you do, you''ll be so glad you considered it early!!!)

I can only conclude that you try both and decide for yourself (after all, both SDK''s are free! ). But that leaves me on the fence yet again

So to avoid the fence (and a sore bottom ) I personally prefer DirectX due to the control it supplies. But if Direct3D didn''t exist, OpenGL is a very close second (to me, at least!) :D

Anyone who claims that one or the other is more powerfull than the other is to arrogant to take notice of (a closed mind is no mind). My choice is personal, yours will be too. Sorry it''s not that helpfull to anyone trying to decide

n!
Well, I personally prefer my experience with OpenGL over
anything any of the Direct-X suite has ever offered. It''s
just feels a lot easier, and I don''t have to put up with the
OOP as much



----------
Disco Love For Everyone
----------"i think that all this talking and such is paining my head to astounding annoyance" - Erick"Quoting people in your tag is cool. Quoting yourself is even cooler" - SpazBoy_the_MiteyDisco Love For Everyone
oh yes, another point I failed to make
Thanks spazboy, DirectX is much easier to follow and use if you''re familiar with OOP programming (speaking from a C++ standpoint, I haven''t tried DX with VisualBasic (is that OOP?))
So you may want to check out OpenGL if you don''t know what a virtual table is, or a this pointer Although at least try it, if you try both and choose one, at least you have reasons!

n!
Well...this topic is certainly no stranger to me

I''ve had this same descussion on the OpenGL discussion board and I found out that there is no technical reason why one is better than the other.All the arguments were purely OPINION based.That''s it.People have been telling me that OpenGL is easier to use.Well,from what I read about DirectX 8 (or a future version of DirectX) it''s API is going to change so it''s as easy (if not easier) than OpenGL.So ,that argument for OpenGL is tossed out the window.(No pun intended) The only thing that''s going for OpenGL is it''s portability.And with the advent release of the X-Box,I have no doubt that more and more programmers are going to migrate to it (IF it indeed lives up to it''s hype.)

Another major thing why some people are choosing OpenGL over Direct3D is because Direct3D is a Microsoft product.This has got to be one of the lamest excuses I''ve ever heard.I mean,is hating Microsoft reason enough to bash their products?
When I was deciding whether to use Direct3d or OpenGl I noticed that very few opengl programs worked with my video card (crappy voodoo banshee). I have a very limited budget so my only real choice was to use Direct3d. If I had a better video card I probably would''ve started with opengl, but currently I don''t think it matters. Sure setting up direct3d is much harder, but once you get past that in a few days, they take just as much work. You just need to pick one and learn as much as you can about it.

*** Triality ***
*** Triality ***
Here''s the problem with directX: EVERYTHING IS IN CAPS.
Example: LPDIRECTDRAWSURFACECAPS7
Or: LPDIRECT3DVERTEXBUFFER7
And the god-awful Hungarian notation prefixes..
lpd3dvbaVertices; // pointer to a vertex buffer array

How''s this:
LPD3DDRAWPRIMITIVESTRIDEDDATA* lplpd3ddpsdaVertexComponents;

I think clean code must be against Microsoft company policy. AND ALL THEIR COMPUTERS HAVE THE CAPS KEY PERMANENTLY STUCK.

-RWarden (roberte@maui.net)
My take on the whole debate of Direct3D vs. OpenGL is that it is pointless, going along with C vs. C++, Linux vs. Windows, Netscape vs. Internet Explorer, etc. Why not just give the entire issue a rest? If someone wanted to get some information regarding Direct3D vs. OpenGL they could search through the thousands upon thousands of debates that have probably raged covering this topic and come to the conclusion that there is no conclusion. The best answer to the question of “What should I use for my game, Direct3D or OpenGL?” is “The one you like.” Give each API a try, look at source code, write simple applications and come to your own conclusion. Trying something out on your own will provide better information than a group of opinions ever could. Different people have different preferences, I like OpenGL and so do other people, but that doesn’t make OpenGL the right choice for other programmers and it doesn’t make OpenGL better than Direct3D. Just my two cents on the topic.

Nate Miller
http://nate.scuzzy.net
" I bet I surprised a lot of people writing such a topic"
Yes you really do.You never seem to run out of "innovations" for this forum heh?
And Witchlord:I completely agree with your doc except one thing that isn´t really true:I think most new Hardware-features are accesable through OpenGl FIRST ´cause the vendors mostly publish their Extensions at the timeframe the card comes into stores.If this TimeFrame is just after a new DirectX release the D3D-people will have to wait....One year....



To the discussion:
I think it´s just a political decision.Do I want to support M$ on their way to world-domination?For me the answer is definately NO(that´s why I use OpenGl.Despite this I see no reason to use D3D ´cause I don´t wanna live without OpenGl´s procedural interface).Even now the consequences of M$ monopol status are
un-tolerateable(spelled correctly?) - Just think about the Xbox thing which perhaps ruins the (PC-)Games industry.Bungie is the first developer who lost his soul+independence+innovations to M$ and belief me:Many will follow(The fact that even Carmack thinks about programming for the XBox scares me).

Greets,XBTC!

Edited by - XBTC on July 6, 2000 1:46:16 PM

This topic is closed to new replies.

Advertisement