TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

The Tale of OpenGL vs. Direct3D

266 点作者 tilltheis将近 14 年前

13 条评论

brudgers将近 14 年前
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 未加载
marshray将近 14 年前
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 未加载
Impossible将近 14 年前
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 未加载
latch将近 14 年前
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 未加载
goalieca将近 14 年前
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>
ANH将近 14 年前
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 未加载
landhar将近 14 年前
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 未加载
deathwarmedover将近 14 年前
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
barrettcolin将近 14 年前
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.
rvkennedy将近 14 年前
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.
Fuzzwah将近 14 年前
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 未加载
gavanwoolery将近 14 年前
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>:)
spydum将近 14 年前
<i>slow clap</i>