C/C++ >> open gl vs. DirectX
Posted by neonbjb on 09:27:00 01-06-2003
wat the heck is up with all this open gl stuff? i dont see anybody postin' stuff about DirectX. Sure, open gl is a bit faster, but DirectX provides much more control over the hardware and 3d generation. Also, opengl doesnt have any software for two of todays most popular OS's: windows 2000 and windows xp. I've always been biased against open gl because three of my systems dont have compliant cards. Those cards will run any DirectX though, and perfectly, too!
Posted by KaGez on 15:35:00 01-06-2003
about your 3 (probably very cheap) vid cards:
Check the box. There 100%ly is written that they have DirectX support. Same goes for OpenGL. If there is "OpenGL Support" written on the box/card, it supports OpenGL. Actually OpenGL, as well as DirectX are hardware accelerated 3d APIs, so they need the hardware to support it. Up to now, OpenGL wasn't very popular, because portability didn't matter much, and it also wasn't very good up to version 1.2. DirectX had a _horrible_ API until they reached verion 7 of it, and at that point portability still didn't matter that much. Since that point most of the hardware vendors started supporting DirectX (in this case Direct3D) on their boards.
But, lately portability started to matter. Many home users also start using Linux, and DirectX doesn't work with any platform other than Windows (suprise suprise ). Power graphics card caompanies like Nvidia and ATI joined the OpenGL commitee, and since that point OpenGL started to be widely used, because it is portable, and also slightly (depends on your card tho) faster than Direct3d. Also, Nvidia and ATI offer many extensions for OpenGL, some of which you can't use in Direct3d. Here the portability let them make this decision again. If they write extensions for OpenGL, programmers could use them on multiple platforms, and are not boud to windows.
Also, there are drivers out there supporting OpenGL for many many cards, and for almost all version of Windows. If you say there is no OpenGL support in Win2k/XP, you're plain wrong. Nvidia, as well as ATI (many others too, but these are the 2 major companies) offer drivers for their OpenGL cards for Win2k/XP.

Now, if you are a programmer, and want to make as much money as possible with a game, what would you do? Use DirectX(3d) and only focus on the windows users, or use OpenGL and also let the users on other platforms play your game? I think OpenGL would be the wiser choice here, don't you think so?
[addsig]
Posted by neonbjb on 05:56:00 01-07-2003
When i said, though, that windows 2k and xp dont support open gl, i meant without graphics card software. Sure, the name brand, $100 super-graphics name-brand companies like nvidia and whoever produces those voodoos support opengl but personally i would rather but windows xp for the same price as those graphics cards. And besides that, if all else fails, you can resort to downloading windows. Unfortunately, you cannot download a graphics card. And if u got anything older than 1995, that card wont work with open gl. (Its been my experience along with a couple of friends.) [yes, my other two computers are very old:)]
Posted by KaGez on 20:41:00 01-07-2003
well, as said above. OpenGL is there for portability reasons, and also so that people have a thing called "choice", so they aren't bound to 1 single 3d library.
Also, a nvidia GeForce2MX/100 costs about $30US these days, and I have such a thing. It is more than enough to play things like HalfLife, Quake1/2/3, and even UT. I think money is no problem here anymore, and there are tons of geForce and ATI cards out there which use the PCI bus instead of the AGP bus, and are designed for such "old" systems.
And, I think you have $30US, don't you?
Also, there are many smaller vid card companies like trident, who fully support OpenGL. Nvidia and ATI are just the biggest, best known ones. Today there probably is no vid card maker anymore who doesn't support OpenGL...
[addsig]
Posted by KaGez on 20:46:00 01-07-2003
forgot to add it
Also, you need support on your graphics board for DirectX(3d), so hardware supporting OpenGL or DirectX(3d) isn't a issue anymore today either. In other words:
If you want to focus on windows users, stick with Direct3d, which will keep you only with your windows users together, or use OpenGl and have a broader audience
[addsig]
Posted by jjthebear on 08:11:00 03-24-2003
OpenGL is superior to directx for several reasons. The first reason is that OpenGL is C based, and directX is C++ based. Instantly, you can know that of course openGL will be faster. Anything that can be done with directX can be done with OpenGL too. Also, GL 2.0 is on its way so watch out Microsoft, your about to get slapped.

The only thing I do like about directX is it includes a sound API which is *really* nice. However, you can use directSound and GL together anyways so I guess it doesn't really matter.

I've never heard of a card that was hardware accelerated for directX and not for GL but whatever.
Posted by dxprog on 08:41:00 03-24-2003
You must keep in mind that DirectX is more than just a graphics API. [addsig]
Posted by jjthebear on 12:05:00 03-24-2003
Are you talking to me? I clearly said it includes more than just a graphics API...
Posted by dxprog on 00:23:00 03-25-2003
Whoops, must have missed that. Sorry. [addsig]
Posted by KaGez on 16:19:00 04-01-2003
but the biggest minus for DX is that it is not portable in _any_ aspect.
There even the sound API doesn't help you much further
[addsig]
Posted by neonbjb on 13:37:00 04-10-2003
For one thing, DirectX IS able to be programmed in C, if anyone really insisted on that. OOP is MUCH easier than procedural, so thats another up. And I dont know ONE person in my neighborhood or that goes to my school that owns a computer running on anything BUT windows. Go to a computer store, look at the games section. I dont think u'll find much games built for linux or mac. I'm assuming you are programming for Windows users, as most programmers do.

Oh, and the graphics card i was using that doesnt support open GL was (1) an ATI rage controller, (2) Monster Fusion, and also most of the built in graphics cards that come with computers dont support openGL. DirectX has is Hardware Emulation Layer (HEL) which allows it to run on any computer, no matter how bad the graphics card, provided the requested screen resolution is available.

[ This Message was edited by: neonbjb on 2003-04-10 13:46 ]
Posted by dxprog on 23:59:00 04-10-2003
Amen. [addsig]
Posted by cowsarenotevil on 15:08:00 08-06-2003
OK, to end all arguments (and spawn others):

In theory, OpenGL and Direct3D are equal (may be slightly different depending on the video card, however)

Windows supports both

OpenGL is cross-platform

Neither is Open-Source

DirectX uses Object Oriented Code

OpenGL uses C code.
Posted by split on 08:09:00 08-08-2003
I don't understand why they call it OpenGL when it's not open.
Posted by KaGez on 23:28:00 08-09-2003
as a matter of fact, M$ is also included in that comitee judging OpenGL's faith
bah!
[addsig]
Posted by cowsarenotevil on 13:09:00 08-11-2003
Shouldn't it be "fate," rather than "faith"?|
Posted by KaGez on 00:15:00 08-12-2003
whoops, yeah, that's what I meant. sorry
I'm kinda doing lotsa typos or misuse words. please forgive me
[addsig]
Posted by cowsarenotevil on 04:05:00 08-12-2003
I wasn't meaning to nag, I was just wondering why two people in a row said "faith." I was afraid I was missing something
Posted by KaGez on 00:47:00 08-30-2003
nono, it was just a typoe of me. Didn't even realize somebody else used that word too
[addsig]