PDA

View Full Version : Is OpenGL generally slower than D3D or Glide?



Rice
April 24th, 2002, 23:12
Not sure, but I feel it is slower on my PC.

Hacktarux
April 24th, 2002, 23:17
It depends of the hardware and the OS.
With a 300 Mhz processor and a nvidia card, i feel that opengl is really faster than d3d. With high end system, usually, i can't see any difference. With a voodoo card, opengl is slow.....

Trotterwatch
April 24th, 2002, 23:20
I think the difference is how they are used - both have immense functionality and abilities.

The best to answer this type of question would be someone who is incredibly proficient in both languages (which isn't me!).

Rice
April 24th, 2002, 23:37
I have Geforce2, still feel OGL is slower than D3D and Glide, probably the OGL plugins have not been optimized enough as Jabo's D3D and Dave's Glide64.

Smiff
April 24th, 2002, 23:42
for some1 w/ l337 emu skillz u do ask some really n00b Qs Rice. I tink ur prolly right. Also, nVidia have some of the best OpenGL drivers there are... so how anyone else is finding them I dread to think.

Rice
April 24th, 2002, 23:57
ya, smiff, this IS a noob qs, I really wonder what kind of answers could come out. And I wonder if there could be a good answer.

Jsr
April 25th, 2002, 00:38
On my voodoo3 is Glide most probably the fastest driver.
But after that would I say D3D, and then OGL who seems to be slowest.

adi
April 25th, 2002, 00:41
on nvidia cards I feel theres a big speed increase with open gl

Smiff
April 25th, 2002, 01:18
for a valid comparison you'd have to running the same task coded probably by the same person with somehow equivalent "optimisation level" running on the same system with the same settings (AA etc etc.).. and then it would only be valid for that task or similar. OpenGL on 3dfx is not fair because it uses an MCD (sort of a wrapper I believe) not an ICD.. similary Glide is iffy because they wrote the API aswell as the hardware and is not full-featured.

One particular area where OpenGL could I think give a significant improvement (I'm not sure on this) is in framebuffer handling, which DirectX (apparently) is not good for. Another obvious point is near plane clipping distance. However, most of these are issues of quality not speed.

In general though speed is more a matter of how well the hardware/drives and running code are optimised I think. It's all very theoretical, me no like.

linker
April 25th, 2002, 01:42
OpenGL is a little slower.
But it has great abilities.. just look at Quake3, UnrealTournament, RTCWolfenstein, Medal of Honour....

Harteex
April 25th, 2002, 02:26
Open gl runs faster than Direct 3D on my GeForce4 mx with the latest Nvidia detonator drivers...

Eddy
April 25th, 2002, 08:06
glide is the fastest api since its hardware specific, after that would be nvidia and its opengl, since its sort of for nvidia cards with nvidia extensions, ect. D3D is by far the slowest. Why do you think the quake iii engine was made in ogl? And the unreal engine? most games now run on ogl.

Reznor007
April 25th, 2002, 08:07
Voodoo3 and newer use ICD's, but some of the basic polygon and texture functions are routed through the glide3x.dll driver. Had 3dfx not gone out of business, a new ICD would have been released that did all functions internally, instead of relying on glide3x.dll

Cyberman
April 25th, 2002, 08:30
Speed is relative.

ID started and fueled this debate a long time ago. .which is faster good old David was ticked off at D3D and it's crappy ness.. granted this was D3D version 1 or 2.
Turns out OGL is faster if the Drivers are properly done this test was done by a magazine that was independent of MS and SGI (EETIMES did an excrutiatingly long article covering ALL facets of the drivers etc.) OGL can be faster but D3D can be as well.

They handle organizing and rending information differently etc. Also they have rather different feature sets as well. OGL and D3D drivers for the same game look different in feel and quality of the video they are only close because the authors had to spend a lot of time getting D3D to look closer to OGL's output (that's not a joke).
I suppose D3D will someday catch up to the quality, but D3D was an overnight hack by MS. It's now at revision 8.X this should be a big indicator since OGL is 1.24. MS has made major revisions to D3D almost every 6 months except the last two releases.

Why use one over the other is a debate that could deadlock the internet. Bottom line is.. niether are as fast as the other, it all depends on the drivers and the person using the API.

Cyb

Reznor007
April 25th, 2002, 11:55
OpenGL is actually at 1.3.

The big advantage to OpenGL is portability to almost any 3d capable platform. However, since it is not updated very often, it lacks in some important areas. D3D now has a standard pixel/vertex shader language, whereas OpenGL relies on vendor specific extensions.

Slougi
April 25th, 2002, 13:18
Originally posted by Cyberman
It's now at revision 8.X this should be a big indicator since OGL is 1.24. MS has made major revisions to D3D almost every 6 months except the last two releases.
Just wait for DX9, Displacement Mapping :D

N-Rage
April 25th, 2002, 23:48
Depends mainly how the Application/Game is written. Just play Serious Sam in OpenGL and then with DirectX. SS was written for OpenGL initially so D3D is much slower. Same goes with Halflife for example.

For me, most games run better in OpenGL, UT is one of the few exceptions.
DirectX is more flexible at the moment since its updated more often, but just wait for OpenGL 2.0 ;)

conkerman
April 26th, 2002, 07:14
opengl 2.0 is in the works and when it comes out, it will have vertex shaders and all the goods.
conkerman

Reznor007
April 26th, 2002, 07:23
Well, it's supposed to, but we will see :)

Cyberman
April 26th, 2002, 21:40
Originally posted by Reznor007
Well, it's supposed to, but we will see :)
That's the difference between OGL and DirectX
When MS says they are going to do something its 'Well it's in there but we don't recomend using it because it's buggy' when the OGL consortium does something 'It's in there it works. have fun.'

;)

Cyb

linker
April 27th, 2002, 06:37
Originally posted by Cyberman

That's the difference between OGL and DirectX
When MS says they are going to do something its 'Well it's in there but we don't recomend using it because it's buggy' when the OGL consortium does something 'It's in there it works. have fun.'

;)

Cyb

Exactly.

Lex
April 27th, 2002, 15:11
Glide is the best!!!!!
..........
On voodoo's then

And what is n00b

Smiff
April 28th, 2002, 00:14
Originally posted by linker


Exactly.

yah but it's fairly irrel, Dx6/OGL1.1 can do everything you'd ever need for N64 emulation. Er, I think. Haven't actually thought about that much. Maybe PD lens effects could do w/ something.

neoak
April 28th, 2002, 01:05
OpenGL is now at 2. Only that is on development. OpenGL is faster on some cards like nVidia. D3D is faster on others cards (don't know which 'cause i have a TNT2)

linker
April 28th, 2002, 03:14
Originally posted by Smiff


yah but it's fairly irrel, Dx6/OGL1.1 can do everything you'd ever need for N64 emulation. Er, I think. Haven't actually thought about that much. Maybe PD lens effects could do w/ something.

Actually the new versions of DX and OGL add some new effects, new functions (like vertex shading) that are not needed to emulate N64. However sometimes they could be faster than the old ones.

Smiff
April 28th, 2002, 23:58
nah they won't be faster. how often have you noticed a speedup by upgrading DX version? quite.

About the original topic, since OpenGL was designed and is used for professional graphics applications on high end hardware, where accuracy is important, whereas Dx was designed and is used in gaming, where FPS on cheap hardware is important, and quality less so, it would seem reasonable to hypothesise that Dx would be the faster API. I have no idea if this is true or not.

Cyberman
April 29th, 2002, 01:52
Originally posted by Smiff
nah they won't be faster. how often have you noticed a speedup by upgrading DX version? quite.

About the original topic, since OpenGL was designed and is used for professional graphics applications on high end hardware, where accuracy is important, whereas Dx was designed and is used in gaming, where FPS on cheap hardware is important, and quality less so, it would seem reasonable to hypothesise that Dx would be the faster API. I have no idea if this is true or not.

Now if I remember this correctly DX had the philosophy of creating a vertex buffer and spewing it out to the hardware at once.

OGL had you create the structure and let the drivers determine how to send information for 3d to the hardware. I believe the studies showed that the vertex buffer was slower because 3d hardware was designed such that the iterative process OGL uses is more efficient.

OGL tends to be more efficient, as for what hardware now does.. it would hard to guess. DX only became popular because MS made it available and pushed it since 1992 very hard. It's been catching up in quality for the last 10 years though.

OGL has some nifty features but it's only as fast as the hardware it's run on. NVidia's hardware seems to do OK with it, SGI's hardware (which the N64 is based on), was what OGL was originally developed for. I messed with SGI's in 1993 those things ROCKED, they had the same power you can get on the NVIDIA cards of today, at the same resolution. I did lots of experiments ;)

Cyb

Raging Fuel
April 29th, 2002, 15:24
Originally posted by Eddy
glide is the fastest api since its hardware specific, after that would be nvidia and its opengl, since its sort of for nvidia cards with nvidia extensions, ect. D3D is by far the slowest. Why do you think the quake iii engine was made in ogl? And the unreal engine? most games now run on ogl.

Umm... the unreal engine uses D3D.

Quvack
April 29th, 2002, 18:37
Erm... if I remember correctly there was a Software, D3d, OpenGL and Glide set of renderers for the Unreal engine

Harteex
April 29th, 2002, 22:57
As I remember the Unreal engine is based on Glide mainly...

Smiff
April 30th, 2002, 00:48
Unreal was Glide or Software only for a long time, they added D3D in a patch later, it was very problematic I remember. That was a (the?) real Voodoo2 showcase game.

Eddy
April 30th, 2002, 02:44
was, but now i heard its ogl based

sk8bloke22
April 30th, 2002, 02:55
ya, but even UT works best on glide. d3d with UT was slooow...and opengl was buggy. but both d3d and opengl hav improved with newer drivers and patches.

mesman00
April 30th, 2002, 03:00
glide was pretty *pimp* in it's prime. but, one of the major problems was that you had to have a voodoo card to use it. i remember before i had my voodoo3 there were so many games i couldn't use hardware acceleration in, becuase they were all customized for glide. also, 3dfx seemed to have a problem with updating their drivers. the updates seemed like they were few and far between.

Eddy
April 30th, 2002, 04:40
the d3d and ogl 3dfx drivers where horrible, but glide performance was crazy! fast! beautiful! 3dfx's fault was manufacturing the board and the chip, they should have just manufactured the chip, and third party vendors develope the boards. like nvidia is doing. I know that UT was for glide originally, but the new u2 engine is on ogl.

Reznor007
April 30th, 2002, 06:53
Unreal started as software only, then software+Glide, with HEAVY Glide optimizations in the core engine. Then D3D, OpenGL, S3 Metal(S3's own API), and PowerVR SGL(PowerVR's API). UT refined the engine, and made the D3D and OpenGL renderers much better. Unreal2 and UT 2003 are now heavily D3D/OpenGL optimized, with SGL, Metal, and software dying off. I've heard that some Glide code is still present, but will probably be totally removed by the time it's released.

Lex
May 2nd, 2002, 21:47
I think Glide is the fastest?

Lex
May 2nd, 2002, 21:49
Originally posted by mesman00
glide was pretty *pimp* in it's prime. but, one of the major problems was that you had to have a voodoo card to use it. i remember before i had my voodoo3 there were so many games i couldn't use hardware acceleration in, becuase they were all customized for glide. also, 3dfx seemed to have a problem with updating their drivers. the updates seemed like they were few and far between.

There are some very good working 3rd party drivers on www.voodoofiles.com

Doomulation
May 3rd, 2002, 04:45
Hmm, my best guess would be that, oGL would be pretty fast as of the new release and that it's nice for frame buffer for n64.
So I guess it's oGL.

VTT
May 5th, 2002, 13:00
Originally posted by Lex
I think Glide is the fastest?

:)
Truly, Glide fastest video in'erfejs, because it is realized is hardware. Glide it is impossible to compare with OpenGL, DD and D3D, you see they program. The hardware interface it when video the interface is integrated in the chip on video to a card, therefore Glide the fastest. If to compare OpenGL with D3D that D3D certainly, because all "Windows" is displayed in DD (DirectDraw). On one of the Russian forums I read, that in GeForce4 interface DirectX is realized is hardware, but I am not sure in it. As when we write plug-in it as takes away speed.
For example in engines 3d the most part of mathematical calculations today already write on assembler. do not forget that we discuss emulation, we should emulate the hardware interface.
;)

bodie
May 5th, 2002, 16:27
???
well that's cleared that up :P

Jabo
May 6th, 2002, 07:08
I worked with a friend of mine who wanted to rewrite the Unreal Tournament Direct3D driver (years ago), I took a look at it, it's texture caching is pretty oddly implemented, that's probably the primary reason Glide might outperform it so much.. Epic also wasn't the one who coded the driver so you can't blame them.

In comparing OpenGL and Direct3D, OpenGL gives the IHV more flexibility to implement optimizations specific to hardware, since the back-bone isn't controlled by microsoft files, it makes the path between the API and the hardware shorter. I'm not sure what that would mean to you guys tho, both are highly researched and optimized libraries at companies like nvidia and ati.

neoak
May 7th, 2002, 05:35
And a programable graphics Chip could improve the perfomance? Which chip? That new from 3DLabs. I believe that it's code # is P10 or something (With the 10, i'm sure of that).

pj64er
May 8th, 2002, 05:16
neoak, please take the SSB:M pic oult of ur sig.It is nice (really it is), but it is killing us 56kers :(

Slougi
May 8th, 2002, 11:34
I agree.

neoak
May 10th, 2002, 20:00
Ok.

pj64er
May 11th, 2002, 02:41
thankyouverymuch