TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

The Tale of OpenGL vs. Direct3D

266 pointsby tilltheisalmost 14 years ago

13 comments

brudgersalmost 14 years ago
Though well written, I think the article misses an important point. Microsoft designed Direct3D with games in mind and the culture surrounding OpenGL gave priority to productivity applications for engineering and design as is appropriate for something that was developed by Silicon Graphics.<p>The characterization of Microsoft being disorganized because they were working on OpenGL at the same time as Direct3D is a direct result of misunderstanding this difference. Microsoft had to address to entirely different markets: gamers for whom high frame rates were much more important than fidelity and engineers for whom accurate rendering was important (Even today, high end graphics cards for Windows workstations run OpenGL.)<p>[<a href="http://www.nvidia.com/object/autocad_pd_perf_drivers.html" rel="nofollow">http://www.nvidia.com/object/autocad_pd_perf_drivers.html</a>] [<a href="http://en.wikipedia.org/wiki/Quake_engine#Reducing_3D_complexity_to_increase_speed" rel="nofollow">http://en.wikipedia.org/wiki/Quake_engine#Reducing_3D_comple...</a>]<p>3dLabs involvement with the development of improvements to OpenGL is symptomatic of OpenGL's emphasis on fidelity in rendering and the legacy of SGI from whence it evolved. The slow pace was perfectly acceptable to a group of serious people who care about standards and don't care about games.<p>3dLabs is also an example of the distinct segmentation of the consumer and engineering market for graphic cards in the PC market. The second PC I inherited in my first CAD job had was a 386 with an Nth Engine B752 - you could have built a kickass gaming system for the price of the card alone but it wouldn't put much of a dent in the price of an Iris.<p>[<a href="http://www.thecomputerarchive.com/archive/Displays/Video%20Cards/Nth%20Graphics%20-%20Nth%20Engine%20video%20card.pdf" rel="nofollow">http://www.thecomputerarchive.com/archive/Displays/Video%20C...</a><p>Keep in mind that back in the 1990's all sorts of consumer grade graphic card craziness was going on in Windows boxes - e.g. VESA local bus [<a href="http://en.wikipedia.org/wiki/VESA_Local_Bus" rel="nofollow">http://en.wikipedia.org/wiki/VESA_Local_Bus</a>] and the volume of new Windows machines was exploding and many of them were running graphically intensive games.
评论 #2712785 未加载
评论 #2712997 未加载
marshrayalmost 14 years ago
The moderate experience I have with OpenGL confirms this explanation. However, it sort of misses the point. The author may be a bit too close to OpenGL to judge the relative significance of the all the historical details he knows.<p>Take a step back:<p>A) There's no way in hell Microsoft would allow OpenGL to take the lead from Direct3D on Windows and Xbox. They would wield the carrots and the sticks to prop up Direct3D (and perhaps even disadvantage OpenGL) if it ever came down to it.<p>B) OpenGL is a success by any objective measure. Nearly every platform <i>except</i> Windows and Xbox uses it exclusively. E.g. mobiles. Game consoles may have dedicated APIs but I'm sure there's a better OpenGL compat layer than a Direct3D.<p>Recently I've developed some code on Linux for OpenGL 3.3 with GLSL and it is awesome.
评论 #2711725 未加载
评论 #2712804 未加载
Impossiblealmost 14 years ago
This is probably the most accurate view of the history of OpenGL vs. Direct3D I've seen on the internet. It goes into the actual implementation details of why OpenGL or D3D have been more or less popular for games\graphics programming over the years. Also follows my personal adoption of the APIs for projects pretty closely. Most other comparisons are too political or anti-MS, and are often written by people that have limited (if any) experience with Direct3D.
评论 #2711598 未加载
latchalmost 14 years ago
As if Glide never existed<p>In all seriousness, I did 1 graphics programming course back in the day, and it was pretty insane. This was all in OpenGL. The amount of code required to draw the simplest scene was massive. I seem to remember there's a built-in teapot primitive, and I ended up just using that to construct everything (yes, there are simpler built-in primitives, but none nearly as cool as a teapot). I didn't do very well in that course.
评论 #2712473 未加载
评论 #2712459 未加载
评论 #2711999 未加载
goaliecaalmost 14 years ago
Wikipedia also has an extensive page on this topic <a href="http://en.wikipedia.org/wiki/Comparison_of_OpenGL_and_Direct3D" rel="nofollow">http://en.wikipedia.org/wiki/Comparison_of_OpenGL_and_Direct...</a>
ANHalmost 14 years ago
Another thing that isn't exactly helping OpenGL is Apple's slow creeping adoption of recent versions. I'm running the latest Snow Leopard and my code is reporting OpenGL 2.1.<p>I'm not really blaming Apple. I mean, on top of the core version they've implemented about 100 extensions with names like GL_ATI_separate_stencil, GL_NV_fragment_program2, GL_ARB_instanced_arrays, etc.. But the OpenGL 4.1 specs were released a year ago and I've got 3D code that runs significantly faster when I boot into Windows. Exact same hardware, but it's OpenGL 2.1 (+ extensions) vs. Direct3D 9.
评论 #2714034 未加载
landharalmost 14 years ago
Also worth reading: <a href="http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-and-not-DirectX" rel="nofollow">http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-an...</a>
评论 #2712261 未加载
评论 #2712132 未加载
deathwarmedoveralmost 14 years ago
I feel a lot less ignorant of all that was going on behind the scenes whilst I was rocket-jumping, exploring black mesa, destroying diablo's soulstone, driving around liberty city etc
barrettcolinalmost 14 years ago
As a complement, Chris Hecker has kept some of his notes regarding OpenGL vs. Direct3D around:<p><a href="http://chrishecker.com/OpenGL" rel="nofollow">http://chrishecker.com/OpenGL</a><p>It seemed quite important at the time that he- who begat WinG, which begat DirectX, some of which is covered in Renegades of the Empire, which someone else mentioned, which is certainly worth reading- went on to agitate for OpenGL over Direct3D. Now there's kind of a scrapheap of history vibe off of the whole thing.
rvkennedyalmost 14 years ago
The article misses one of the more interesting recent developments - that via OpenGL ES, GL is effectively doing an end-run around the whole Direct3D roadblock. As several posters have mentioned, GL ES is the standard in all the major mobile platforms. Now WebGL is threatening, not without some MS pushback, to become the standard for native 3D on the web.<p>Almost by default - simply because DX is a Windows/Xbox technology, and these platforms (particularly Windows, but also the traditional consoles) are fading - and GL is ruling the new world of games - online games, Facebook games, web and so on.<p>It's rare indeed on HN to see much talk of Microsoft's continuing dominance, because in the web/tech world, that dominance doesn't exist. Games are changing too. And it's games we're talking about here - OpenGL has always run the show in serious applications of 3D, and that shows no signs of abating.
Fuzzwahalmost 14 years ago
As a gamer all I knew was that Quake ran fast and Monster Truck Madness was framey as hell on my box. Thus I knew that OpenGL was good and Carmack was god and D3D was terrible.
评论 #2712803 未加载
gavanwooleryalmost 14 years ago
I just wrote about this recently, although with more focus on Microsoft's mistakes post DirectX 9.0:<p><a href="http://altdevblogaday.com/author/gavan-woolery/" rel="nofollow">http://altdevblogaday.com/author/gavan-woolery/</a><p>:)
spydumalmost 14 years ago
<i>slow clap</i>