Skip to main content
gamedev.net
🔒 Locked

Classical Question

Started by idinkin 18 replies 850+ views
Original Post
idinkin
idinkin
What''s the actual difference between DirectX and OpenGL? Do they have the same abilities? Thanx in advance..
Sometimes movement is a result of a kick in the ass!
OneBitWonder
OneBitWonder
DirectX comes with the ability to program graphics, sound, network, input, video / media. OpenGL is strictly graphics.
idinkin
idinkin
Sorry guys, I meant Direct3D and OpenGL...
Sometimes movement is a result of a kick in the ass!
Pipo DeClown
Pipo DeClown
"The difference? Direct3D is better! "

Uhm.. there shouldn''t be any differences in feutures, but the code looks hell different.

.lick
Namethatnobodyelsetook
Namethatnobodyelsetook
I''ll say right off the top that I have never used OpenGL, but this is what I gather...

DirectX seems better at keeping current. New versions of DX come out fairly often to coincide with new hardware features.

In DirectX, you can tell what features are available with a capabilities check. After that, coding for each card is identical.

OpenGL usually ends up with several vender specific extensions to support the new features. After some time, these may become ARB extensions which are a vender-neutral way of exposing the same functionality.

Since the OGL extensions are specific for a card (or series of cards), they tend to do whatever they do quickly and efficiently. However, since it''s a vender extension you have to ensure you support all the extensions from all the card manufacturers that your target market might have.

Despite the fact that is sounds like more work, I know a few people who like simplicity and swear by OpenGL.

Also, OpenGL is cross platform, while DirectX is Windows and XBox only.

So, decide who your target is (Linux people? Mac people? PC people only?). If you''ve chosen PC only, you''ve got a choice of DirectX or OpenGL. Both can do the same thing, but OpenGL might be more work because of extensions, though apparently gets faster results (in terms of FPS, not necessarily dev. time).
idinkin
idinkin
So the only difference is that OpenGL may be faster if you use the extensions. And the that OpenGL is cross platform API?
Sometimes movement is a result of a kick in the ass!
MrP
MrP
This may be a sweeping generalisation but I find that people who started programming in C are often more comfortable with OpenGL, while those who started with C++ favour DirectX.

I would recommend trying both and deciding which you feel is suited to your coding style.
Nik02
Nik02
quote:
Original post by MrP
This may be a sweeping generalisation but I find that people who started programming in C are often more comfortable with OpenGL, while those who started with C++ favour DirectX.

I would recommend trying both and deciding which you feel is suited to your coding style.


I have noticed this too.
DirectX is, after all, class-based, while OGL is procedural, as is c.
Niko Suni
idinkin
idinkin
I have one more question.. If, for example, I wrote an implementation of something in Direct3D 8 and then when Direct3D 9 was realesed I will have to rewrtie the whole code to get the functionality of the 9th version?
Is it the same in OpenGL?

Is OpenGL updated more frequently than Direct3D?
For exmple the OpenGL extensions allow the OpenGL programmers to implement the new features more frequently than Direct3D's ones. Because the programmers use Direct3D have to wait to the new realese of Direct3D. Am I wrong?

Is there an extension mechanism in Direct3D 9?

[edited by - idinkin on August 9, 2003 6:07:25 AM]
Sometimes movement is a result of a kick in the ass!
QReboundSoftware
QReboundSoftware
[offtopic]
Pipo you two timer! You said in my post "I have finally seen the light" that you liked OpenGL, and now your saying DX is better?
[/offtopic]

[ontopic]
OpenGL is better if you want to write for playstation two or linux, but DX has ALOT more functionality. Microsoft has a way of creating a million complicated ways to do one thing.
[/ontopic]


______________________________
Quantum
CEO of Quantum Rebound Software
Website Up Soon
______QuantumCEO of Quantum Rebound SoftwareWebsite Up Soon
idinkin
idinkin
Can you give any example for better functionality of Direct 3D than OpenGL?
Sometimes movement is a result of a kick in the ass!
RhoneRanger
RhoneRanger
ahh, we get this question again.


Neither is better, both have identical functionality. pick one, and go with it!
TechleadEnilno, the Ultima 2 projectwww.dr-code.org/enilno
langguy
langguy
In response to upgrading DX8 -> DX9....no, you don''t have to change your code for it to still work, because DirectX is backwards compatible. (at least that''s what I''ve gathered.) However, if you want to use new features (whatever those might be), you may have to modify a few lines, but you certainly don''t have to start all over again.
Raloth
Raloth
I want the forum to delete any message that has a sentence ending with a question mark and has the phrase DirectX (well, at least Direct3D) and OpenGL in it . Either one can be used in place of the other if you know what you are doing.
____________________________________________________________AAAAA: American Association Against Adobe AcrobatYou know you hate PDFs...
RhoneRanger
RhoneRanger
quote:
Original post by langguy
In response to upgrading DX8 -> DX9....no, you don''t have to change your code for it to still work, because DirectX is backwards compatible. (at least that''s what I''ve gathered.) However, if you want to use new features (whatever those might be), you may have to modify a few lines, but you certainly don''t have to start all over again.


Correct! even with the DX9b sdk, you can still compile and run dx6 apps!

TechleadEnilno, the Ultima 2 projectwww.dr-code.org/enilno
idinkin
idinkin
Thanx for your help guys!
In my opinion OpenGL rulz!
Sometimes movement is a result of a kick in the ass!
ShlomiSteinberg
ShlomiSteinberg
quote:
Original post by idinkin
Thanx for your help guys!
In my opinion OpenGL rulz!



Thats right!!!!! Err... What forum is it?

"C lets you shoot yourself in the foot rather easily. C++ allows you to reuse the bullet!"
Member of the Shove Pouya Off A Cliff club, SPOAC. (If you wish to join, add this line to your signature.)Member of "Un-Ban nes8bit" association, UNA (to join put this in your sig)

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.