# OpenGL 2.0 vs. DirectX 9.0

27 replies to this topic

### #1Noor

Senior Member

• Members
• 503 posts

Posted 31 January 2003 - 09:28 PM

What are the differences between OpenGL 2.0 and DirectX 9.0
What are the disadvanteges and advantages of both APIs?
"What ever happened to happily ever after?"

### #2baldurk

Senior Member

• Members
• 1057 posts

Posted 31 January 2003 - 09:32 PM

Well, first of all, OpenGL 2.0 only exists as a growing specification. It is not publically available in the way that DX 9.0 is.
DirectX 9.0 has a HLSL whereas OpenGL 2.0 only has a plan for one.
Other than that the advantages/disadvantages of the two are the same as they have always been.
OpenGL is cross-platform
DirectX has better hardware support (I think)

edit: btw, this could easily turn nasty ;). Just a warning
baldurk
He who knows not and knows that he knows not is ignorant. Teach him.
He who knows not and knows not that he knows not is a fool. Shun him.

### #3davepermen

Senior Member

• Members
• 1306 posts

Posted 03 February 2003 - 01:21 PM

best is to know all of them, and love and hate all of them. both have great features, and both have stuff wich is really messy. so what? gl is great, dx is great, c is great, c++ is great, c# is great, too.. tons of other stuff as well..
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....

### #4void

New Member

• Members
• 22 posts

Posted 04 February 2003 - 11:01 AM

The gauntlet has been thrown down by baldurk...

OpenGL2.0 is much much MUCH MUCH better while DX9.0 sucks some serious heap overflow...
OGL is crossplatform, it doesnt change much every new version, so old programs will compile ok with a new OGL, while the same cant be said for DX.
Imho OGL syntax is better, DX syntax exaple:
LPTHISHURTSMYEYESALOT->DoSomething();
The fact that OGL is only a graphics library, when developing a game you have far better freedom over which libraries you use for other things such as input, audio, etc, while with DX your basically usually stuch with dinput and dsound and whatever.
OGL is available on almost all languages, while DX is not really even available on C++, its only really available on Visual C++ (a microsoft product, who woulda guessed), althought it can be coaxed into running on other compilers, i have heard people saying that getting it to run on say borland C++ is a bitch (althought they might be just lost)...
And lastly, OpenGL has been around a long time, and thus it is stable, it wont ever disappear (fingers crossed), while if say M$dies (fingers crossed it happens) then its bye bye DX as i doubt that it would continue to live without M$.

Did i mention that OpenGL is better than DX???

...The above views were expressed by Evil Void, he is dead now...

### #5void

New Member

• Members
• 22 posts

Posted 04 February 2003 - 11:04 AM

Oh yer, im fully aware that this may start a huge flamewar, but hey, we need to liven this board up.

### #6davepermen

Senior Member

• Members
• 1306 posts

Posted 04 February 2003 - 12:31 PM

but not with stupid flamewars.

both are great. if you don't understand one, then you're just plain stupid:D
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....

### #7baldurk

Senior Member

• Members
• 1057 posts

Posted 04 February 2003 - 06:41 PM

OMG void, that was hilarious!

esp the LPTHISHURTSMYEYESALOT->DoSomething();

oh man, I haven't laughed like that since I was a little girl, thank you.
baldurk
He who knows not and knows that he knows not is ignorant. Teach him.
He who knows not and knows not that he knows not is a fool. Shun him.

### #8DarkLight

Member

• Members
• 57 posts

Posted 04 February 2003 - 10:09 PM

void said:

OGL is available on almost all languages, while DX is not really even available on C++, its only really available on Visual C++ (a microsoft product, who woulda guessed), althought it can be coaxed into running on other compilers, i have heard people saying that getting it to run on say borland C++ is a bitch (althought they might be just lost)...
DirectX is also available on Delphi and Visual Basic... I don't tried at Delphi (but I have books about using DirectX in Delphi) but I have friends, who are writitng game with DirectX 7 and Visual Basic 6
But I prefer OpenGL
<a href='http://www.kaldata.net' target='_blank'>kaldata.net - IT News</a>

### #9donBerto

Senior Member

• Members
• 369 posts

Posted 04 February 2003 - 10:21 PM

...doesn't make it suck less. DX sux. opengl rulez.

hehe but seriously - OpenGL is available freely, while DX is available on a term-basis [when you download the sdk it makes you 'sign' an agreement, i don't remember what it says...]

OpenGL: 2
Direct[su]X: 0

this is getting ugly :D
Imagine.

### #10DarkLight

Member

• Members
• 57 posts

Posted 04 February 2003 - 10:39 PM

My opinion for Direct X:
1. Very poor documented (as all Microsoft technologies)
2. The worst designed Windows API
3. Bugged
<a href='http://www.kaldata.net' target='_blank'>kaldata.net - IT News</a>

### #11davepermen

Senior Member

• Members
• 1306 posts

Posted 04 February 2003 - 10:59 PM

microsoft stuff is very well documented (even opengl, but those docs are very old as never got updated:D)

its the best api by far (understand com and you love it)

what bugs? it runs perfectly stable here, and very save. _and_ there are great debugging tools like a full debug-mode dx wich reports all stuff, great..
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....

### #12DarkLight

Member

• Members
• 57 posts

Posted 04 February 2003 - 11:10 PM

Yes, I understand COM and I love it
But DirectX is harder to learn that OpenGL
There are Great games, made with DirectX of chource
But I prefer OpenGL - open-source, platform independented and with many tutorials existing on the web

DirectX is much more funcitonal that OpenGL - I admit. But I can agree that it is the best api. It is the worst api, but better is not developed.
<a href='http://www.kaldata.net' target='_blank'>kaldata.net - IT News</a>

### #13donBerto

Senior Member

• Members
• 369 posts

Posted 05 February 2003 - 12:44 AM

COM SUX! the interface is flawed! m$plays too much with pointers and in turn makes it vulnerable [i think it's the #1 cause of all their bugs]. davepermen said: microsoft stuff is very well documented show us! DarkLight said: DirectX is much more funcitonal that OpenGL what are you talking about?!? DX sux. sucking does _NOT_ mean it is more functional! this thread is pumping blood in my veins! i'm starting gain some color - i was wondering why i was so pale... :lol: Imagine. ### #14void New Member • Members • 22 posts Posted 05 February 2003 - 03:19 AM Id like to correct one thing i said, DX is available for not just C++, but maybe for like 3 languages in total... While OGL is available for almost all languages in existence... BTW, daveperman, i hope you do realise that my post was 1/2 a joke... I may have listed all the OGL adcantages over DX, but at teh same time i also realise that DX has its own advantages over OGL.. ### #15donBerto Senior Member • Members • 369 posts Posted 05 February 2003 - 04:17 AM as much as i like to joke... I will admit one thing - DX [with it's huge financial support] will probably always show us the first in new techniques. but OpenGL won't be far behind. Imagine. ### #16baldurk Senior Member • Members • 1057 posts Posted 05 February 2003 - 07:45 PM I'd say that DirectX will be first with the new techniques is because it doesn't have to pass them through a board. The ARB will always slow OpenGL down in my opinion baldurk He who knows not and knows that he knows not is ignorant. Teach him. He who knows not and knows not that he knows not is a fool. Shun him. ### #17donBerto Senior Member • Members • 369 posts Posted 05 February 2003 - 08:34 PM exactly. it's a shame, really - having multiple companies/organizations have board approval and other beaureaucratic delays... at the same time, I respect the individual companies/organizations protecting their intellectual property rights. I guess it's just one of those ethical dillema's that all of us in the end have to weather out. Imagine. ### #18davepermen Senior Member • Members • 1306 posts Posted 05 February 2003 - 09:38 PM msdn library, every function with extensive detail, different tutorials, sample code. a real sdk, sdk's from the vendors, etc.. tons of stuff.. com is great. and the pointer issue is a non-issue if you know what you do (you know, smart pointers.. all my dx objects are smart pointers, no bug at all possible anymore). com runs in much more than 3 languages, it runs in about all windows languages, meaning, too, ports of languages to windows platform, say for example lisp, to bring in a quite .. strange?.. example. com all the way. i hated them for a long time myself. once i finally understood them, i understand why microsoft uses them. they are really great, and make your stuff save. they actually save most pointers stuff. anyways, windows nt systems normally don't crash anyways if hw works. my one runs over weeks and weeks, while gaming and coding.. and surfing and ripping dvd's and listening online musik and downloading gigabytes, and and and.. if you know what you do, its all very simple. with knowing what you do i mean, you have to learn to teach c++ how it should work with com objects. once it understood you, they are as easy to use as int, float, or any inbuilt variable. pass by value etc. works without _ANY_ bug. i use myself gl all the way. but dx showed me what save, simple and espencially, clean code actually is. gl isn't. still, i prefer gl myself, hehe. the bonus to be able to still use it iff i will have to move to linux? well.. a nice addon for me. davepermen.net -Loving a Person is having the wish to see this Person happy, no matter what that means to yourself. -No matter what it means to myself.... ### #19donBerto Senior Member • Members • 369 posts Posted 06 February 2003 - 12:49 AM davepermen said: msdn library, every function with extensive detail, different tutorials, sample code. a real sdk, sdk's from the vendors, etc.. tons of stuff.. ok good job. maybe I should be more careful. m$' stuff is well documented, for the most part but I guess what I really meant is ease of navigation [through documentation]. and sensible examples that you don't have to download. msdn's documentation of MFC is a great example of the way you can easily* traverse through the documentation - but that's almost purely due to the nature of MFC. [[ for those that don't know about MFC, it's basically inheritance-oriented and you can just follow down the 'inheritance' lineage. ]]

a bad example about msdn is trying to find examples, you often [all the time?] have to download a sample program that includes too much code, when all you really need is the 'substance' of your query.

a GREAT example is sdl's documentation. I think that is the best all-around documentation model. examples are usually along with the same 'subjects' page.

...but I guess that's just my personal opinion/choice.

davepermen said:

com is great. and the pointer issue is a non-issue if you know what you do (you know, smart pointers.. all my dx objects are smart pointers, no bug at all possible anymore).

I said it before and I'll say it again. COM SUX

let me take that back, the idea is noble. uniformity _usually_ leads to efficiency and COM certain does it. the issue isn't knowing pointers that makes it bad. it's the _knowing_ of pointers that make it vulnerable. i don't like the idea of being able to point to any object and then access that object via the pointing pointer [still with me?]
again, maybe that's just my opinion.

davepermen said:

com runs in much more than 3 languages, it runs in about all windows languages, meaning, too, ports of languages to windows platform, say for example lisp, to bring in a quite .. strange?.. example.

a ha! that's why it sux - it's not cross-platform!
of course, it won't be cross-platform, it's not in their best interest for it to be cross-platform [or will they benefit...?] you can do all this cool com object stuff but if it's designed for a specific os then it sux. I'm thinking of activeX controls in some websites. of course, linux-users will not be able to use/display them [unless using crossover plugin?]... further adding to its suckiness.

like i said before, i think the idea of COM is great but using heavy use of pointers makes it vulnerable. almost pointless even [no pun intended, really]
Imagine.

### #20void

New Member

• Members
• 22 posts

Posted 06 February 2003 - 06:00 AM

donBerto, what you said is TOTALLY wrong. one of the major advatages of opengl is that it exposes new features MUCH quicker than DX. Why? because it does so through extentions... while DX has no extentions, and so the only way a new feature can be exposed is through the next release of DX, which can take up to a year... Now, extentions have their own problems of course, but everything has its price. For example, NVIDIA said that the NV30 has features that can be accessed ONLY through openGL extentions, and cant be accessed AT ALL through DX, well, until the next revision comes along.

#### 1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users