OpenGL or DirectX

Started by
9 comments, last by Diego 24 years, 7 months ago
Hi,
if you want to start easily use OpenGL. It's really easy, but you don't have all the possibilities you can do using Direct3D IM.

Some coders prefer OpenGL, some D3D. Both are really good API's. I learned D3D because I wanted to use DirectSound and DirectDraw in my actual project, too. And that's an advantage, the architecture of all Direct-API's nearly the same, so stepping from one to another is not that hard.

You can get good results with both API's, have a look at Half-Life or Quake 3, both using OpenGL, HL looks even better in OGL in my opinion.

CU

------------------
Skullpture Entertainment
#40842461

Graphix Coding @Skullpture Entertainmenthttp://www.skullpture.de
Advertisement
Oh oh, this is one of them dangerous questions to ask, as it regularly spawns flamewars in the newsgroups.

To answer your questions though:
-OpenGL can do 2D graphics, just use an Ortho projection and the various 2D graphic calls. However if you are planning on doing a 2D game you're probably better off using DirectDraw. Using OGL without a 3D accelerator can be a bit slow (although workable - witness my Azteroidz game) unless you are VERY carefull.

-DirectInput and DirectSound etc are all independant from Direct3D, you will probably end up using these regardless of whether you you use OGL or D3d.

-One big advantage of OGL is cross-platform support. Note that due to Slllllooooooooowwwwwww driver updates cross-platform bizarrely includes NT4 support. (which only supports DX3, and no D3d)

-OpenGL definately is easier to work with and is more intuitive (IMHO), but driver support isnt quite as good as for D3d (although not far behind anymore)

l8r
Ryan

--
Ryan Haksi
cryogen@infoserve.net
http://members.home.com/borealis/ryan.html
If you want to do 2d bitmapped graphics (think tile based engine) I would say definitely learn DirectX. OpenGL is easier to do 3d stuff in but the driver support is lacking. Learn both you'll be more marketable as a programmer.
L8R

Scruffy

But what about Direct3DRM? Isn't that supposed to be Microsoft's answer to "easy" 3D?

I've started a D3D project and it is going VERY slowly, but that's all the books seem to be for.


Direct3D RM is going to be dead (tell me if itsn't already). Retained Mode is for designing apps where speed is not the issue. For games, it definitely wouldn't suffice.

And, OpenGL needs a bit of getting used to--because its state machine is *so* good, and complex. Direct3D takes a LOT of code to just setup things. But, DX 6.1 SDK comes with D3D Frame work, which simplifies a *lot*. All you need to do is add few app-functions, and start drawing triangles...

- prauppl

- prauppl
I would like to know if I should use OpenGL or DirectX to get VoodooII performance on my 3D game. If I can do that with OpenGL, how would I do it?

Thanks,


Well, if you use OpenGL with Voodoos, then you won't get the full performance out of it. There is no OpenGL ICD yet for Voodoos. There is a 3Dfx Mini-GL Driver for Quake2 that you can use... it doesn't support all the features--just what you see in Quake2.

I never tried this Mini-GL driver. But, you normally link w/ OpenGL32.lib, Glu32.lib, Glut32.lib (these two are optional). And, you include GL.H along with optinal files (glut.h, etc.)

- prauppl

- prauppl
Thanks prauppl,
However, I was looking for a temporary solution to my low fps rate. I just want to accelerate my graphics for a first-person 3D shooter - another one of those - and right now with simple graphs the fps is too low for a large screen.
Is it possible to accelerate my graphs using Voodoo2 or should I switch to DirectX ?

Thanks,

I've never used OpenGL, but am using D3D. IMHO, D3D takes tons of code to setup, but after that it's pretty straight forward and easy. I have written some classes that do the initialization for you, makes it a lot easier. They're part of an opensource game engine: http://members.xoom.com/mutex0/defy

I'm a amateur programmer learning to use VC++6. I'm focused mainly on doing fullscreen graphics for games. Should I be using DirectX or OpenGL? I've already got the DirectX6.1 SDK, but have recently been told that OpenGL is easier. Can OpenGL do 2D graphics, or is it 3D only? If OpenGL is better, how do I develop for it? Should I use GLUT or something else? Help is appreciated.

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

Added on 9/5: Wow, I really opened a can of worms here. If any one cares, I'm starting with DirectDraw instead of OpenGL for 2D, and it's going well. Also, I have something to say on the topic of 3D stuff. I've been gamer much longer than I've been a game designer, and I have a voodoo2 card. For the most part, the ONLY way to get full performance out of a voodoo2 is to use glide. 3Dfx still think they own the accelerator market and insist on using their own API, from what I hear. But all you developers that are far more advanced then me should keep in mind that voodoo based cards are not the only ones out there anymore, and I think that refusing to use glide is the only way to help 3Dfx wake up and smell the polygons.

[This message has been edited by Diego (edited September 05, 1999).]

-Diego"What is wrong with the world today, the government, the media, or your family?"~Papa Roach

This topic is closed to new replies.

Advertisement