Confused(Opengl or DirectX)

Started by
43 comments, last by Buzz82 22 years, 3 months ago
i have decided to start games programming .I have 1 year experience of C and have programmed simple games like paranoid and nibbles and a drawing utility similar to MS paint and now a days i am learning C++, but i am a little confused over the choice of an API.I don''t know which one is better opengl or directx.I started to learn opengl 1 month ago but now i am stuck because many said that as far as programming games for windows is concerned u should use directx and some said that there is no harm in using opengl as it is compatible to many platforms and is as good as directx for windows game programming.Please help me as i am really very confused about this matter.Please also give me a rough idea on the percentage of commercial games made in opengl and directx. Reply me keeping in mind that i am a newbee.Also give reasons for your suggestions.I''ll be grateful
Advertisement
Quake3 Engine uses OpenGL... Quake3 Arena, Giants, Max Payne.. and a bunch of others use it. Unreal Tournament uses Direct3D (and has an OpenGL plugin too). It really comes down to user preference, and has nothing to do with one API being "better" than the other. OpenGL is cross-platform though... Dx isn''t.

Billy
IMVMABO, (very much a beginner )

It seems that since DirectX encompasses more than just graphics, learning direct3D may come easier if it's being learned along with the other directx components since it may "tie together" easier and you may get used to the directx programming mindset. Or something like that. (at least, I hope that's what happens with me, hehe)

When dealing with them one on one with just graphics, I have no idea. I seem to hear that both have there benefits/drawbacks and nowadays, there's not a huge difference (although apparently when GLQuake first came out, there was a big difference between OpenGL and Direct3D, probably because OpenGL is simply older and more optimized)

Oh yeah, and Max Payne uses Direct3D doesn't it?

Edited by - jdawg2 on January 8, 2002 11:48:08 PM
Perhaps this is pushing my privileges as a moderator, but either way I'm adding a disclaimer to Myca's message: No.
- SeanHowe


OpenGL vs. Direct3D??? no comparison..just take a look at Serious Sam ..the water and skies in that game are simply amazing including everything else..then i take a look at games that use D3D (everquest, DAOC etc.) and i get so disappointed on WHY developers choose D3D over OpenGL when they make a game..does microsoft give them some sort of cash incentive to use their API?

OpenGL - fantastic graphics, not OS dependent, and easy to program for and very stable.

Direct3D - Terrible graphics compared to OpenGL games, must be used with windows only, annoying to program compared to OpenGL and very buggy.

If D3D is so great how come id software continues to use OpenGL?
all the best games especially FPS(Halflife,Serious Sam, Quake series etc.)use OpenGL..they know what they are doing..wonder what john carmack would say if someone suggested he switched API's haha

I use VC++6 to program but i refuse to use Microsofts D3D API cause of its lack of OS support and it's much lower quality graphics.

What i don't get is with every new version of D3D that comes out they have something new like "Quad-Buffering-bumpmapping duplex-photorealistic imagery-with-a-side-of-bacon...but when a game comes out that uses that so-called new graphic enhancement it STILL doesnt come close to OpenGL's look or stability.

Well i for one choose OpenGL, games that have used it in the past have always impressed me and will continue to impress me with Return to Castle Wolfenstein and the upcoming Doom 3.
I would want to create a game that everyone running any OS could enjoy and not force them to install windows just so they can play it..because not EVERYONE that wants to play those great games use windows.

Btw great site










Edited by - myca on January 8, 2002 12:37:17 AM

Edited by - SeanHowe on January 9, 2002 1:56:17 AM

Edited by - SeanHowe on January 9, 2002 1:56:47 AM
i seriously think there should be an OpenGL vs DirectX forum on this site...
with the number of posts i''ve seen fighting over this crap, you could fill a forum up.
see, just wait until a DX advocate finds this thread..
it''s all downhill from there.

-eldee
;another space monkey;
-eldee;another space monkey;[ Forced Evolution Studios ]
quote:Original post by myca
OpenGL vs. Direct3D??? no comparison..just take a look at Serious Sam ..the water and skies in that game are simply amazing including everything else..then i take a look at games that use D3D (everquest, DAOC etc.) and i get so disappointed on WHY developers choose D3D over OpenGL when they make a game..does microsoft give them some sort of cash incentive to use their API?


You''re asking for trouble, I think.

Because Everquest, Dark Age of Camelot etc don''t make use of all the features of DirectGraphics does not mean the API is bad.

quote:
OpenGL - fantastic graphics, not OS dependent, and easy to program for and very stable.

Direct3D - Terrible graphics compared to OpenGL games, must be used with windows only, annoying to program compared to OpenGL and very buggy.


The quality of graphics is so hardware dependent than it''s totally irrelevent. Doom 3 would look ugly on a Trident with 512k of VRAM. Don''t blame the API for that.

As for the ease of use, I agree. Even thought DirectGraphics (D3D8) is now easier to program with, I still find it annoying and more difficult than OGL.

quote:
If D3D is so great how come id software continues to use OpenGL?
all the best games especially FPS(Halflife,Serious Sam, Quake series etc.)use OpenGL..they know what they are doing..wonder what john carmack would say if someone suggested he switched API''s haha


Unreal, Vampire: the masquerade, Black and White, etc. all use DirectX (though Unreal can do OGL too). Half-Life uses a Q2 engine and so obviously uses its OGL renderer. They bought a Q2 license because the engine was the most advanced one back then. It''s really a matter of architecture and power. I don''t think they''d have minded if it had been done with D3D, given than the underlying API is totally opaque to them. I have no idea about Serious Sam.

quote:
I use VC++6 to program but i refuse to use Microsofts D3D API cause of its lack of OS support and it''s much lower quality graphics.


See above.

quote:
What i don''t get is with every new version of D3D that comes out they have something new like "Quad-Buffering-bumpmapping duplex-photorealistic imagery-with-a-side-of-bacon...but when a game comes out that uses that so-called new graphic enhancement it STILL doesnt come close to OpenGL''s look or stability.


Again, it''s hardware dependent, and it also depends on what the developers want to implement. If they don''t use the new shaders, you obviously won''t see them in game.

quote:
Well i for one choose OpenGL, games that have used it in the past have always impressed me and will continue to impress me with Return to Castle Wolfenstein and the upcoming Doom 3.
I would want to create a game that everyone running any OS could enjoy and not force them to install windows just so they can play it..because not EVERYONE that wants to play those great games use windows.


Good luck to develop cross-platform software with MSVC.

Before I get flamed, know than I use OpenGL and write cross-platform software (I develop on Linux, FWIW). I find it cleaner, easier and just nicer than D3D (and D3D wouldn''t be an option for me anyway) and well.. I just love it. It is also better documented. I just dislike it when someone bashes a language/API/OS/whatever without any valid reason.


^
True! But you wasted way too much time on an obvious troll (come on, he was comparing 2 APIs performance based on the difference between 2 games that are 3 years apart and one is an Engine Demo (Must showoff the cool gfx features) while the other is a MUD (Graphics arent even necessary).
...
It really comes down to which one you like to use. At this point in time neither really has any better quality/speed.

NeHe for OpenGL
NeXe for D3D

--------------------------

Those who dance are considered insane by those who cannot hear the music.
Those who dance are considered insane by those who cannot hear the music.
You say its hardware dependent? true and the hardware i was referring to was a riva TNT ..not even one of the newer more powerful cards..the first TNT..and a Trident with 512k of VRAM??
can you even buy those cards anymore? and if so WHY would you??
You wouldnt even be able to run the game in software mode with that horrible card.

"If they don't use the new shaders, you obviously won't see them in game."

-but when a game comes out that ->USES<-(keyword there)that so-called new graphic enhancement it STILL doesnt come close to OpenGL's look or stability.
i said it was implemented.


"I find it cleaner, easier and just nicer than D3D (and D3D wouldn't be an option for me anyway) and well.. I just love it. It is also better documented."

You just proved my point that OpenGL is a much better API
and i wasnt "bashing" a language/OS only the API..now i will..why program D3D under an already unstable OS(WIN95/98 etc) when you could use NT/XP etc. or linux(according to my friend that says its a very stable OS)?

Cross-Platform development is what i think is important not OS dependent. Why try and defend an API when you don't and can't even use it on your machine and say "I find it cleaner, easier and just nicer than D3D"?
i've programmed many times with both API's and OpenGL is just the best one.

" I just dislike it when someone bashes a language/API/OS/whatever without any valid reason."

If you actually took the time to read my first post you would know that i did give a valid reason why i was bashing D3D..its ONLY for windows..a game programming API that is OS dependent IS a valid reason to bash it.

"I still find it annoying and more difficult than OGL."

uh yeah i just mentioned that in my first post..don't you clarify that as bashing D3D yourself?

and one last thing..

"Because Everquest, Dark Age of Camelot etc don't make use of all the features of DirectGraphics does not mean the API is bad."

Tell me a D3D game that you've played that has water and sky effects that are even equal to serious sams ..if you havent played serious sam yet i suggest you play the game with a REAL GL card and not a Trident LOL then you'll see for yourself how much more potential OpenGL has over D3D.


Goodnight everyone

P.S. The field of view serious sam has is also amazing...D3D has to hide long levels or zones(eq) with the same lame fog effect and just draw the graphics as the player gets closer.
every d3d game ive played that had terrain always hid the far off areas of the level..and no that's not intended..D3D is not capable of displaying HUGE terrains without having to hide it with fog effects then drawing the graphics into view as needed.



Edited by - myca on January 9, 2002 2:59:59 AM
^ for baby jesus's sake! no, NO!

You just don't get it. IMO you are right saying OpenGL is better, but not for the good reasons! Your reasons doesnt make any sense!

quote:P.S. The field of view serious sam has is also amazing...D3D has to hide long levels or zones(eq) with the same lame fog effect and just draw the graphics as the player gets closer.
every d3d game ive played that had terrain always hid the far off areas of the level..and no that's not intended..D3D is not capable of displaying HUGE terrains without having to hide it with fog effects then drawing the graphics into view as needed.


Please allow me: WTF!???
You're playing dated D3D games because performance-wise OpenGL and D3D are pretty much equal. Everquest NEED zones because it's an old game and an MMORPG can't be handled the same as a FPS. You cannot compare it with an ENGINE DEMO which is supposed to show the special effects and the latest whiz-bang of the engine so they can license it.

Ah, nevermind but please just give me of what you are smoking so I can live in your fantasy world. It looks fun

Edited by - hpox on January 9, 2002 3:38:38 AM
...

This topic is closed to new replies.

Advertisement