PDA

View Full Version : OpenGL vs DirectX?


erwin1978
06-13-2005, 09:06 PM
Is it true that all 3D modelling packages use only opengl as opposed to directX? Why is that? From what I can tell, directX has gone through more development than opengl. Opengl seems to always play catch-up with directX.

I may be ignorant but I remember opengl still being at version 1.2 while directX went through revisions from 1 to 8 or whatever. Also, opengl 1.5 is available and yet video cards only support upto 1.3 I believe.

kiaran
06-13-2005, 10:29 PM
OpenGL is cross-platform compatible. It will work in Unix, Linux, Irix, MacOS, Windows 98 and XP.

Vertizor
06-13-2005, 11:36 PM
FYI, 3D Studio Max and trueSpace support DirectX renderer in their viewports.

Don't mistaken a larger version number (DirectX 9 currently) to be better. For a very long time DirectX has been very unstable. It wasn't until version 8 did I see Dx start to show some better stability. Games would crash, textures and coloring would be distorted, stupid things like that. But those glitches are unacceptable in professional CAD and even military applications. OpenGL was made to be stable and useful.

mummey
06-14-2005, 12:46 AM
Is it true that all 3D modelling packages use only opengl as opposed to directX? Why is that? From what I can tell, directX has gone through more development than opengl. Opengl seems to always play catch-up with directX.

I may be ignorant but I remember opengl still being at version 1.2 while directX went through revisions from 1 to 8 or whatever. Also, opengl 1.5 is available and yet video cards only support upto 1.3 I believe.

This topic can start flame wars as large as "Maya vs. XSI" if not cared for properly.

Neither is "better". I suggest you do more research and try both out. This is the only way you will get the answer you seek.

-b

montclaris
06-14-2005, 11:36 AM
Everything you need to know and even more :
http://www.opengl.org

I can't agree more with vertizor about version numbers meaning nothing. OGL was a stable and useful solution from the start which is not the case with DX. For instance, the "geometry instancing" feature so advertized in DX9.c, is just a fix to DX not being able to handle large numbers of objects efficiently without batching. OGL had correct solutions for this since v1.1, and provided improved performance solutions in further versions that were all vastly superior to DX up to 9.b.
And above all, as name implies, this is an open standard, which IMO is a must (how many open standard do you know rule in their field ?).
DX is a good gaming solution nevertheless nowadays. But it's not portable to other platforms than windows, and that's a big problem for a professional 3D application.

Critterslayer
06-17-2005, 06:52 PM
yea, version numbers numbers aren't a function of quality. They are entirely up to the developer. You could bang out an alpha version of a program and call it version 3.0 if you want =)

KayosIII
06-18-2005, 02:26 PM
From memory the first version of Direct X was version 3. (the first version anybody used anyway)
The next version version was 5 I don't know if they skipped any other numbers.
OpenGL has been around a lot longer than DirectX.

In terms of offering a hardware independent access to the latest, greatest GPU features directx has an advantage. You can achieve the same with OpenGL using extensions. However each major hardware vendor has different extensions thus coding is a little more complex. OpenGL 2.0 does/will make life a little easier.

If you were using said 3d program to create a game engine for a Directx title there might be some advantage in using directx for the veiwport.

Other wise you are talking a major recoding effort for very little gain. On top of this you are limiting your app to the windows platform.... you also put yourself in a position of being in vendor lock-in - a situation you should avoid if at all practical.

Stevemeister
06-18-2005, 10:06 PM
I agree too with Veritzor on this one, but even as of 8, DirectX really still is just for games. DirectX technically is Direct3D, DirectInput, DirectPlay, DirectShow, and the D3DX APIs all rolled into one. They were all built around COM and made to work together for efficient gaming development. With OpenGL you have to mix in other 3rd party APIs or write your own and it can get pretty messy. Microsoft also advertises DirectX directly as gaming and entertainment technology.

rakmaya
06-18-2005, 10:09 PM
This might be problem if you start things before thinking. When it comes to games, you have to think in terms of consoles and PC. So DX vs OGL is the LEAST problem we face. Most studios have their API handling majority of tasks before going into rendering states for DX or OGL (or consolse SDKs). Creating dependency at that level is very important especially if you want to make things run on consoles. Sticking with OpenGL might be a good idea if you want to publish your code on Linux. For PC games going with DirectX alone will not effect your game sales. This is a bigger problem for modeling and compositing packages where stability at other parts of the system such as OS, Network etc is a major concern and in such case sticking with OGL will be the most prefered option.

erwin1978
06-19-2005, 12:22 AM
opengl version 2 is out and yet video cards only support upto version 1.3. Why for the love of bugs bunny?

Stevemeister
06-19-2005, 12:48 AM
1.3? My old GeForceMX 4 supports OpenGL 1.5. The ATI RADEONS from I think 9600 PRO and up support OpenGL 2.0 now, as well as the newer NVIDIA cards as well. But one thing I've noticed, especially on ATI's site and on their product boxes, they avoid saying OpenGL 2.0... they just say the "latest version." But if you look around the ATI site you'll see demos illustrating the newer OpenGL 2.0 features.

montclaris
06-19-2005, 05:50 PM
I think you misunderstood some bit of information here. My GeForceFx has total support for 1.5 and some of the added features in 2.0 as well as almost all NVidias extensions. Maybe what you meant is that OGL is not supported on windows platform since this version because libraries weren't updated? But you can still access these features through vid card drivers. It's just a little more of work. So that's a false problem really unless you're scared using wglProcAddress.

Edit : also i wonder why you think all hardware vendors would lose their time invested in the ARB meetings if they didn't intend to support OpenGL ?

CGTalk Moderation
06-19-2005, 05:50 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.