Archived

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

Directx 9 or OpenGl 1.4

This topic is 5086 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

Since I´ve started graphics programming my main question was what api should I use ? OpenGL-never-updated or DirectX-evil-microsoft-hard-API-to-learn. I know that directX has so many features that OpenGl does not have. But I am angry about DirectX, because every single year Micro$oft come up with a new version of DirectX, therefore I always I must update my DirectX sdk . On the other hand OpenGl is cross platform, a bit easier to learn and compact. But the problem are the updates. I can´t believe that anyone has tried to Update OpenGL. I know they are planning release OpenGl 2.0 but when ??????? So... What are your opinions

Share this post


Link to post
Share on other sites
quote:
I know that directX has so many features that OpenGl does not have.

Wrong. There is no feature that is exclusive to Direct3D.

quote:
But I am angry about DirectX, because every single year Micro$oft come up with a new version of DirectX, therefore I always I must update my DirectX sdk .

You just have to download the libs seperatly. ~5mb

quote:
I can't elieve that anyone has tried to Update OpenGL.

There were several updates of OpenGL, but it's generally not that importing because every vendor can implement their new features immediatly using the extension mechanism

[edited by - noVum on February 6, 2004 2:07:42 PM]

Share this post


Link to post
Share on other sites
<< But I am angry about DirectX, because every single year Micro$oft come up with a new version of DirectX, therefore I always I must update my DirectX sdk. >>

Naw, you don''t have to. Heck I''m using DirectDraw 1.0 interface, and I''ll slowly catch up. Problem is finding those older SDK''s (I''m using DX 6.1)

Good article using DirectDraw 1.0

PDF of DirectDraw 6.1 SDK

If you are doing simple 2D games, this should be fine. The difference between early and later versions is the different numbers you put in front of your interfaces, (IDirectDraw4 for DX 6, IDirectDraw7 for DX 7), and more functions, etc. It helps to keep up with the technology and constantly update, but you don''t have to....

Phil P

Share this post


Link to post
Share on other sites
quote:
Original post by brunogmd
OpenGL-never-updated


[sarcasm]yes with OpenGL 2.0 coming It''s sure not updated.[/sarcasm]


Share this post


Link to post
Share on other sites
I''m still using DirectX 8.0

For directx9 you need to have a card that''s fully dx8 compliant but with dx8 you can go back further. I think this is the case. Correct me if I''m wrong.

~Wave

Share this post


Link to post
Share on other sites
quote:
Original post by noVum
quote:
I know that directX has so many features that OpenGl does not have.

Wrong. There is no feature that is exclusive to Direct3D.



Yep. Direct3D is all there is to DirectX. DirectSound, DirectPlay, DirectShow, and DirectInput are al figments of your imagination.

Share this post


Link to post
Share on other sites
quote:
Original post by Wavewash
I''m still using DirectX 8.0

For directx9 you need to have a card that''s fully dx8 compliant but with dx8 you can go back further. I think this is the case. Correct me if I''m wrong.

~Wave

Not true. The basic features of DX9 will work on DX7 and DX6 hardware as well. They should even go back further than that. If DX9 only worked with DX9 and DX8 level graphics hardware that would kind of defeat the purpose of using COM.

Share this post


Link to post
Share on other sites
quote:
Original post by brunogmd
OpenGL-never-updated


how can it never be updated if we are on version 1.4 which only appeared last year?
(and infact, some drivers are close to 1.5 support as well, not to mention the GLSL support in the ATI drivers)

Share this post


Link to post
Share on other sites
quote:
Original post by brunogmd
I know that directX has so many features that OpenGl does not have.



Keep in mind you can mix Opengl with the sound, input, networking and the other compoents of DirectX. You could also use other APIs such as OpenAL and OpengIL with OpenGL

Share this post


Link to post
Share on other sites
quote:
Original post by cowsarenotevil
quote:
Original post by noVum
quote:
I know that directX has so many features that OpenGl does not have.

Wrong. There is no feature that is exclusive to Direct3D.



Yep. Direct3D is all there is to DirectX. DirectSound, DirectPlay, DirectShow, and DirectInput are al figments of your imagination.



You try desperately to be a smartass and just end up looking like an idiot. How sad for you.

I could easily use any of those things in conjuction with OpenGL anyways.

quote:
Original post by brunogmd

So... What are your opinions



That you're poorly informed.

PS. It's Microsoft, not Micro$oft, twit.



[My site|SGI STL|Bjarne FAQ|C++ FAQ Lite|MSDN|Jargon]
Ripped off from various people

[edited by - wild_pointer on February 6, 2004 8:55:01 PM]

Share this post


Link to post
Share on other sites
Well, I heard a lot that OpenGL is easier than DirectX, etc... I have some DirectX experience, and after looking at openGL samples, I can only say that I found that statment very wrong... For example, see how you create textures in openGL and in DirectX, or Vertex buffers/objects...
If you don`t hate Microsoft, go with DirectX, it will make your life much easier...
They are updateing SDK every year now, so you don`t have to worry about not being able to use latest gfx features... (without having to bother with different extensions like in openGL)...

Share this post


Link to post
Share on other sites
quote:
Original post by wild_pointer
smartass....idiot...How sad for you....you''re poorly informed...twit.

Get up on the wrong side of the bed today, wild_pointer? Turn down the hostile a few notches.

Bruno, the current state of OpenGL''s EXT and ARB extensions is quite good. With few exceptions, you can do all the neat modern advanced graphics things you want to using those extensions, and they will be moderately compatible across graphics cards. OpenGL IS updated, just in a different way from DirectX.

Ultimately, you''ll most likely end up learning both. So it doesn''t really matter which you start out with. DirectX, at this point, has certain definite advantages with regards to usability for beginners, but OpenGL plus SDL is darn good too.

Flip a coin, and remember to learn them both eventually.


"Sneftel is correct, if rather vulgar." --Flarelocke

Share this post


Link to post
Share on other sites
quote:
Original post by noVum
quote:
I know that directX has so many features that OpenGl does not have.

Wrong. There is no feature that is exclusive to Direct3D.



Wrong. There are some features that are in Direct3D and not in OpenGL 1.4.
1) Dual monitor output compatibility (ever gotten it to work in openGL? didn''t think so.)
2) Pixel Shading (it''s in 2, but not 1.4)

Share this post


Link to post
Share on other sites
quote:
Original post by MoRRiS2
1) Dual monitor output compatibility (ever gotten it to work in openGL? didn''t think so.)

That''s not OpenGL''s job. If it''s impossible to get it to work in your situation, I''d be blaming the glue layer between OpenGL and your windowing system of choice (e.g., WGL, GLX, et cetera). Despite what you say, I seem to remember a decent number of people claiming to have multi-monitor output with OpenGL.

quote:
Original post by MoRRiS2
2) Pixel Shading (it''s in 2, but not 1.4)

That''s also incorrect. Any implementation (ICD-side) of OpenGL compliant with a standard greater than or equal to 1.3 can implement ARB_fragment_program. Just because drivers aren''t yet forced to implement stubs for when fragment programs cannot be supported in OpenGL 1.0-1.5, that doesn''t mean that a standard interface is not present to interact with that hardware capability if it''s present. Extensions are how all features that hardware and/or drivers can''t be forced to support are introduced into OpenGL; pretending they''re not part of OpenGL is outright nonsensical.

Share this post


Link to post
Share on other sites
quote:
2) Pixel Shading (it's in 2, but not 1.4)


OpenGL has had pixel shading for a long time, possibly even before DX due to it's extension mechanism. I believe you are refering to GLSlang which is OpenGL's high level shading language. You can currently access GLSlang on ATI cards and should be able to in the near future on NVidia cards.

As to whether to choose OpenGL or DX it's best to try both and see which you prefer.

[edited by - Monder on February 7, 2004 9:48:36 AM]

Share this post


Link to post
Share on other sites
Why dont you do research before your start talking about what you dont know.

[edited by - rebelcoder on February 7, 2004 7:13:15 PM]

Share this post


Link to post
Share on other sites
One thing to keep in mind also is if you ever plan on porting or making games for macs or linux or just about every other os.
They all support opengl whereas directx on runs on windows as far as I know.
Also if you want to know about your card''s opengl capabilites opengl extention viewer from realtech-vr.com is handy. Right now it shows my radeon 9700 with 100% opengl 2.0(opengl sl) compliance but only 83% opengl 1.5 compliant. On the other hand my geoforce fx card it 100% opengl compliant up to opengl v 1.5.

Share this post


Link to post
Share on other sites
quote:
Original post by _the_phantom_
get the Cat4.2 drivers, released in the last 24h, 100% OpenGL 1.5 now


cool i guess that mean new nvidia drivers should be out pretty soon too!

good article on dx vs opengl
http://www.gamedev.net/reference/articles/article1775.asp

[edited by - daveangel on February 12, 2004 10:00:29 PM]

Share this post


Link to post
Share on other sites
quote:
Original post by daveangel
cool i guess that mean new nvidia drivers should be out pretty soon too!



i wouldnt count on it, ATI are on a ''1 a month'' output atm where as nvidia appear to release one ''every so often''.. infact, i think some were put out last week or so

Share this post


Link to post
Share on other sites
If you want to seriously want to consider opengl vs. directx, major factors would be that directx has a steep learning curve, but once conquered you will find the D3DX library functions very useful and something that will speed up development time. Opengl on the other hand will have you program all the matrix functionality yourself and ever little bit of low-level(if you want to call it that...) yourself. Opengl is very easy to pick-up, without vertex buffers and the ability to get and application running very quickly and easily off the bat, but in the long range if you are serious about more complex development, directx will be more effiecient. But this is coming from a DirectX programmer with experience in both area''s of graphics programming, DirectX was my choice.

Share this post


Link to post
Share on other sites
I prefer Direct3D. Why? Because I do. I can do just as much with OpenGL. I have no problems using either.

Please lock this thread, I thought there was a rule against API wars.

Share this post


Link to post
Share on other sites
while(dead)
beat horse;



If God played dice, He''d win.
—Ian Stewart, Does God Play Dice? The Mathematics of Chaos

Share this post


Link to post
Share on other sites
*giggles*
many posts saying ''OpengGL and D3D have the same features'' and then someone claims OpenGL doesnt have vertex buffers, which makes me wonder what VBO (vertex buffer objects) are

Share this post


Link to post
Share on other sites