Linked by Kroc Camen on Fri 8th Jan 2010 21:25 UTC, submitted by kap1
3D News, GL, DirectX Independent game company Wolfire write why you should use OpenGL and not DirectX. The article goes over a brief history and the standard and Microsoft's tactics with DirectX, and what this really means for developers. DirectX keeps games on Windows, and that's not a good thing--over half of the users for one of their games are not on Windows. The fact is that Microsoft will have you believe that DirectX is the better choice for gaming, but OpenGL has always had the best features, first, and in a consistent and transparent way. I'm particularly interested in the last couple of paragraphs where WebGL is mentioned because this is gaining traction with browser vendors and it would go directly against Microsoft's grain for them to implement it in IE--as they should. Will we see yet another generation of Microsoft ignoring the standards and going their own way with a 'WebDirectX'?
Order by: Score:
Times 2
by fretinator on Fri 8th Jan 2010 21:42 UTC
fretinator
Member since:
2005-07-06

I give an Amen x 2 on this one. Games are one of the biggest reasons people are locked in to Windows - and the biggest reason games are usually only on Windows is because of DirectX.

I don't think Microsoft did it on purpose. Things were pretty bleak in the pre-DirectX days for Windows' gaming. Basically, you mostly just had little 2D games. Everything cool (esp. 3D) was still being done in Dos. DirectX brought powerful gaming to Windows. But I do not believe there is any reason now that we have to use DirectX, other than developers and companies who just want to keep doing things "the way we've always done it". Even if you feel Linux will never be a viable market, I still would at least consider the Mac folks.

However, XNA allows developers to target Windows and the XBox 360. I'm sure that's just a little too tempting for the Windows gaming devs to ignore.

Reply Score: 5

RE: Times 2
by Kroc on Fri 8th Jan 2010 21:58 UTC in reply to "Times 2"
Kroc Member since:
2005-11-10

_Everything_ Microsoft make, is to make people use Windows. Now, there’s nothing wrong with them choosing to do that—it is their business, but I think that model is no longer as effective as it used to be. In this day and age it’s about participation—if you contribute to everybody’s success, you bring the whole market up and thus, your slice of the pie increases. You increase the slice by doing the same job as everybody else, better.

Microsoft are in absolutely no way open to the idea of an open web, and that includes a web using OpenGL.

Reply Score: 2

RE[2]: Times 2
by KAMiKAZOW on Fri 8th Jan 2010 23:36 UTC in reply to "RE: Times 2"
KAMiKAZOW Member since:
2005-07-06

_Everything_ Microsoft make, is to make people use Windows.


No, these days it's the Xbox. Microsoft does even no longer release its own games for Windows. Or have you seen Halo 3 for PC?

Reply Score: 2

RE[3]: Times 2
by Kroc on Sat 9th Jan 2010 10:35 UTC in reply to "RE[2]: Times 2"
Kroc Member since:
2005-11-10

You need Windows to develop for the XBox, and the media centre features are designed to work with Windows. Microsoft did try to push their XBox Live gaming service to Windows, but haven’t had much success—it didn’t stop them from trying.

It perfectly fine for them and their business, but let’s not be naïve—if you own an XBox, Microsoft want to do everything to make sure you choose a PC and not a Mac too.

Reply Score: 1

RE[4]: Times 2
by Zenja on Sat 9th Jan 2010 11:52 UTC in reply to "RE[3]: Times 2"
Zenja Member since:
2005-07-06

Actually, development of XBox360 games is done on PowerMac G5.

Reply Score: 1

RE[5]: Times 2
by Kroc on Sat 9th Jan 2010 12:06 UTC in reply to "RE[4]: Times 2"
Kroc Member since:
2005-11-10

G5 Macs were test hardware Microsoft used as a simple approximation of the PPC chip in the XBox 360 before everything was finalised and they had actual test hardware in their hands. They probably also used the G5s to test their compilers and cross-compiling binaries. I would find it very hard to believe that Microsoft would require an out-of-production computer (by four years) to develop on the console, considering if that a G5 were to explode, where exactly is a company expected to get one, eBay? I can’t imagine EA putting wanted ads on Craigslist trying to buy up all the G5s lying around.

Reply Score: 2

RE[5]: Times 2
by BluenoseJake on Sat 9th Jan 2010 15:05 UTC in reply to "RE[4]: Times 2"
BluenoseJake Member since:
2005-08-11

Actually, No. There is an addon for Visual Studio that allows you to use C# to develop games that target Windows/xbox360/Zune, all from the same source code. I have it installed here, but my limited imagination keeps getting in the way of my ability to release a huge hit, and then retiring.

Reply Score: 2

RE[4]: Times 2
by KAMiKAZOW on Sat 9th Jan 2010 20:53 UTC in reply to "RE[3]: Times 2"
KAMiKAZOW Member since:
2005-07-06

You need Windows to develop for the XBox

I think, playing games is more mainstream than developing them.
MS no longer develops any games for Windows. Even the first two Halo games were a year or so late on Windows.

and the media centre features are designed to work with Windows.

MS doesn't even try to push that feature. Xbox Marketplace is MS' preferred way to obtain media.

Microsoft did try to push their XBox Live gaming service to Windows, but haven’t had much success—it didn’t stop them from trying.

MS pushed nothing. MS ported Xbox Live to Windows YEARS after being available on Xbox (two years if you only count Xbox 360).
MS just ported Live to Windows to ensure that Xbox games could be eventually ported to Windows, but only Windows and not Linux and Mac.
If MS didn't port Live to Windows, developers who want a PC port may need to write their own multiplayer layer and that one could and up on Mac and Linux.

Reply Score: 2

RE[4]: Times 2
by boldingd on Mon 11th Jan 2010 16:48 UTC in reply to "RE[3]: Times 2"
boldingd Member since:
2009-02-19

You need Windows to develop for the XBox, and the media centre features are designed to work with Windows.


What I find enormously amusing about that is that I've had much, much more success with my PS3 as a media extender than my XBox 360, owing largely to the PS3's incomparably superior UI (and the fact that the PS3 will let me copy media to its local drive).

Microsoft did try to push their XBox Live gaming service to Windows, but haven’t had much success—it didn’t stop them from trying.


True that. A major reason I didn't get Dawn of War 2 was that it required the use of... whatever the service is called, Windows-side Live. Basically, forcing me to get and use a Games for Windows account, when I already have a Steam account and a damned Gamespy Arcade account... yeah, no, I'll just use a game that properly integrates with the vastly superior and much-preferred Steam service.

Reply Score: 2

RE[2]: Times 2
by Hiev on Sat 9th Jan 2010 03:32 UTC in reply to "RE: Times 2"
Hiev Member since:
2005-09-27

Microsoft are in absolutely no way open to the idea of an open web

You are so uninformed, The MS Asp Ajax library works not only with MS techologies, it works with php, plain HTML and javascript etc. etc. and it is integrated with JQuery.It doesn't even need windows because is standar. It is opensource and is part of the codeplex foundation. Please Krok, you sound like a broken disc, inform your self.

Reply Score: 4

RE[3]: Times 2
by Bill Shooter of Bul on Sat 9th Jan 2010 08:33 UTC in reply to "RE[2]: Times 2"
Bill Shooter of Bul Member since:
2006-07-14

Ran through the demos, It doesn't seem to work on opera or firefox on my fedora box. I'm guessing its relying on IE only quirks? Can't tell really, don't have windows near me. Maybe it works on Firefox/opera windows, but then, its most likely not working with html/JavaScript standards.

Reply Score: 3

RE[3]: Times 2
by Kroc on Sat 9th Jan 2010 10:23 UTC in reply to "RE[2]: Times 2"
Kroc Member since:
2005-11-10

The MS ASP AJAX library requires ASP, a .NET technology that encourages the primary use of Windows to develop with and a Windows server.

Microsoft can’t ignore Firefox now, but that doesn’t mean that they don’t want to tie people to Windows in other ways too.

Reply Score: 1

RE[4]: Times 2
by Kroc on Sat 9th Jan 2010 11:27 UTC in reply to "RE[3]: Times 2"
Kroc Member since:
2005-11-10

Correction—I’m thinking of something else, I think? I know I’m going to be corrected that the MS AJAX library doesn’t require .NET. *sigh* I’m tired.

Reply Score: 1

RE[4]: Times 2
by Hiev on Sat 9th Jan 2010 14:06 UTC in reply to "RE[3]: Times 2"
Hiev Member since:
2005-09-27

MS Ajax Library 4 doesn't need asp.net, because are a bunch of standars libraries.
It only needs standar webservices and those can come from whatever languaje or framework you want as long are standars.

I repeat, Inform your self.

Check this:
http://www.freeimagehosting.net/image.php?ca0ace919b.png

Here is the full video this:
http://microsoftpdc.com/Sessions/FT29

Edited 2010-01-09 14:16 UTC

Reply Score: 2

RE[5]: Times 2
by KAMiKAZOW on Sat 9th Jan 2010 20:55 UTC in reply to "RE[4]: Times 2"
KAMiKAZOW Member since:
2005-07-06

I repeat, Inform your self.

Kroc corrected his statement tree hours before your comment.

Reply Score: 2

RE: Times 2
by DigitalAxis on Fri 8th Jan 2010 22:18 UTC in reply to "Times 2"
DigitalAxis Member since:
2005-08-28

Not that I've looked into it, but I thought people switched from OpenGL to DirectX because of the ease of development, not extra features.

Of course, they suffer very little because Mac and Linux (and etc, this IS OSNews) users don't number all that many and/or dual boot. Smartphones are probably the only reason to reconsider that one.

Reply Score: 2

RE[2]: Times 2
by matto1990 on Fri 8th Jan 2010 22:54 UTC in reply to "RE: Times 2"
matto1990 Member since:
2009-04-18

Actually Wolfire (the company who wrote the article) have found that over half of their paying customers are on mac or linux (which don't support DirectX). People on these systems may be small, maybe only a few % of the overall market, but think about how big that market is. It's still a very large amount of people (million? I'm not sure on the numbers...). Would you consider cutting out that many customers when you could just change technology and get them all?

Edit: Also, ease of development doesn't really come into it because any developer worth their salt will wrap DirectX or OpenGL into a library instead of accessing the calls directly from the game code.

Edited 2010-01-08 22:55 UTC

Reply Score: 2

RE[3]: Times 2
by WorknMan on Fri 8th Jan 2010 23:27 UTC in reply to "RE[2]: Times 2"
WorknMan Member since:
2005-11-13

Actually Wolfire (the company who wrote the article) have found that over half of their paying customers are on mac or linux (which don't support DirectX). People on these systems may be small, maybe only a few % of the overall market, but think about how big that market is. It's still a very large amount of people (million? I'm not sure on the numbers...). Would you consider cutting out that many customers when you could just change technology and get them all?


I don't know. It depends on how much it would cost to switch technologies, and how much longer it would take to use OpenGL as opposed to DirectX. One thing these commercial game publishers know is money, and if they thought it was more profitable to make the switch, I'm sure they would. And they don't give a ding dong didly about idealism either, so if it ain't making them a big enough profit to develop for other platforms, then Mac and Linux users can eat sh*t and die for all they care.

Reply Score: 2

RE[4]: Times 2 - I'd buy
by jabbotts on Mon 11th Jan 2010 20:55 UTC in reply to "RE[3]: Times 2"
jabbotts Member since:
2007-09-06

I'd buy and do far more gaming if I didn't have to stop everything I'm doing and reboot to Windows just because the one blob of code required DX. I'd happily shell out the cost of bleeding edge games if they offered more choice of platform.

For the game tuner geeks; how freaking high could you push your FPS counds if you could install that latest block buster on a minimal *nix install. No dumping resources into the rest of the system that's imposed through the Windows mega-install. WOW is already reported to run better on *nix and that's including the performance hit due to extra abstraction layers (wine/cedega).

Reply Score: 2

RE[3]: Times 2
by bert64 on Sat 9th Jan 2010 15:16 UTC in reply to "RE[2]: Times 2"
bert64 Member since:
2007-04-23

It also has to do with the number of potential customers...
Those markets may be smaller, but there is also a lot less competition... Selling into a smaller but less crowded market can often be very profitable if you get in early enough.

Incidentally, i had never heard of these games... I will be reading up on them later.

Reply Score: 2

RE[2]: Times 2
by darkstego on Fri 8th Jan 2010 23:06 UTC in reply to "RE: Times 2"
darkstego Member since:
2007-10-26

Very True, and it isn't just because of the ease of handling 3D graphics in DirectX. But it also provides a solid network and audio API that is either lacking or non-existant. There are initiatives like OpenAL to try to bring a full open source solution to game developers.

I think its marketing/ease of development that has caused the shift, and with the lion's share of the desktop market being windows, developers unfortunately tend to ignore the fringe MAC and Linux markets. Which forces people like myself to dual boot if I really want to appreciate PC games.

Reply Score: 1

RE[2]: Times 2
by Zifre on Sat 9th Jan 2010 02:15 UTC in reply to "RE: Times 2"
Zifre Member since:
2009-10-04

Not that I've looked into it, but I thought people switched from OpenGL to DirectX because of the ease of development, not extra features.

Actually, from my experience, OpenGL is much easier. DirectX has a huge amount of boilerplate code. SDL + OpenGL is very nice.

Reply Score: 3

RE[2]: Times 2
by lemur2 on Sat 9th Jan 2010 09:26 UTC in reply to "RE: Times 2"
lemur2 Member since:
2007-02-17

Of course, they suffer very little because Mac and Linux (and etc, this IS OSNews) users don't number all that many and/or dual boot. Smartphones are probably the only reason to reconsider that one.


Quotes from the article that may help you get back to reality:

1. "OpenGL is supported on every gaming platform, including Mac, Windows, Linux, PS3 (as a GCM wrapper), Wii, iPhone, PSP, and DS. Well, every gaming platform except for the XBox"

2. "More than half of our Lugaru users use Mac or Linux (as shown in this blog post), and we wouldn't be surprised if the same will be true of our new game Overgrowth. When we talk to major game developers, we hear that supporting Mac and Linux is a waste of time. However, I've never seen any evidence for this claim. Blizzard always releases Mac versions of their games simultaneously, and they're one of the most successful game companies in the world! If they're doing something in a different way from everyone else, then their way is probably right."

3. "if you use OpenGL, you get faster and more powerful graphics features than DirectX 11, and you get them on all versions of Windows, Mac and Linux, as well as the PS3, Wii, PSP, DS, and iPhone."

4. "If you're a gamer who uses Windows XP, Mac, or Linux, I hope you can see that DirectX only exists in order to keep new games from reaching your platform, and the only way you can fight back is to support games that use OpenGL."

In case you missed it, the issue is NOT about just Mac and Linux games and gamers, rather it is about Mac, Linux, PS3, Wii, PSP, DS, Windows XP and iPhone.

Edited 2010-01-09 09:31 UTC

Reply Score: 2

RE[3]: Times 2
by f0dder on Sat 9th Jan 2010 11:00 UTC in reply to "RE[2]: Times 2"
f0dder Member since:
2009-08-05

3. "if you use OpenGL, you get faster and more powerful graphics features than DirectX 11, and you get them on all versions of Windows, Mac and Linux, as well as the PS3, Wii, PSP, DS, and iPhone."

I call bullshit one that one - the OpenGL committee is very slow, and thus you've had to depend on vendor extensions to get the latest features... how portable is *that*?

Reply Score: 4

RE[4]: Times 2
by Laurence on Sat 9th Jan 2010 11:37 UTC in reply to "RE[3]: Times 2"
Laurence Member since:
2007-03-26


I call bullshit one that one - the OpenGL committee is very slow, and thus you've had to depend on vendor extensions to get the latest features... how portable is *that*?


You can check to see what extensions a platform supports - so it's not as big issue in terms of hardware portability as you make out.

And if you're migrating from one OS to another, you'd need to rewrite chunks of non-OpenGL code anyway (eg the iPhone will have different APIs to XP)

Reply Score: 2

RE[4]: Times 2
by KAMiKAZOW on Sat 9th Jan 2010 20:58 UTC in reply to "RE[3]: Times 2"
KAMiKAZOW Member since:
2005-07-06

I call bullshit one that one - the OpenGL committee is very slow

OpenGL 3 is updated far more frequently than DirectX.

Reply Score: 2

RE[5]: Times 2
by KAMiKAZOW on Sun 10th Jan 2010 12:31 UTC in reply to "RE[4]: Times 2"
KAMiKAZOW Member since:
2005-07-06

Who voted my down?
OpenGL 3.0 - July 11, 2008
OpenGL 3.1 - May 28, 2009
OpenGL 3.2 - August 3, 2009

DirectX 10 - November 30, 2006
Direct3D 10.1 - February 4, 2008
DirectX 11 - October 22, 2009

Last three DX updates took MS 3 years.
OpenGL 3 was updated 3 times in 1 year.

Reply Score: 2

RE[5]: Times 2
by kaiwai on Mon 11th Jan 2010 00:48 UTC in reply to "RE[4]: Times 2"
kaiwai Member since:
2005-07-06

OpenGL 3 is updated far more frequently than DirectX.


Which has only been a recently phenomenon; prior to those dates, the improvements coming out of working committee were as slow as the W3C. 2.0 Didn't come out until September 2004, 2.1 didn't come out until July 2006.

I've said it once, and I'll say it again, what is required is a complete API framework like what Microsoft provides. They not only need OpenGL, they also need OpenAL and OpenIN (a framework for input devices that needs to be started - doesn't exist yet) that comes under the rubric 'OpenDA' (Open Direct Access) where consolidated standards are released on a yearly basis which includes all of the above. Put everything under one roof and create a good developer experience with great development tools. If you do that, then the developers will come.

Edited 2010-01-11 00:52 UTC

Reply Score: 3

RE[6]: Times 2
by boldingd on Mon 11th Jan 2010 16:59 UTC in reply to "RE[5]: Times 2"
boldingd Member since:
2009-02-19

Such frameworks do exist, they're just not blessed by the Kronos group. SDL is pretty common and well-known, is available on many platforms, and includes at least sound, networking and keyboard and mouse I/O (I think it also covers file I/O, 2D graphics and image loading). There's also GLUT -- while nobody's going to call GLUT impressive, modern, or feature-rich, it at least covers basic windowing and keyboard/mouse I/O, and is probably available everywhere OpenGL is.

This seems reasonable enough to me. As you point out, the Kronos group has enough trouble keeping the OpenGL ball rolling that it's probably best left to somebody else to handle things like networking and sound. Besides which, SDL is doing a pretty good job of it, so far as I know.

Reply Score: 2

RE[3]: Times 2
by BallmerKnowsBest on Sat 9th Jan 2010 15:40 UTC in reply to "RE[2]: Times 2"
BallmerKnowsBest Member since:
2008-06-02

Quotes from the article that may help you get back to reality:


They don't seem to have helped you any, so I ain't holding my breath.

OpenGL is supported on every gaming platform, including Mac, Windows, Linux, PS3 (as a GCM wrapper), Wii, iPhone, PSP, and DS. Well, every gaming platform except for the XBox


So, in other words, it works on all platforms except for the ones that matter. Uh, impressive?

Reply Score: 2

RE[4]: Times 2
by KAMiKAZOW on Sun 10th Jan 2010 12:32 UTC in reply to "RE[3]: Times 2"
KAMiKAZOW Member since:
2005-07-06

So, in other words, it works on all platforms except for the ones that matter. Uh, impressive?

Xbox 360 is the only platform that matters? WTF?

Reply Score: 2

RE[3]: Times 2
by Karitku on Sat 9th Jan 2010 18:53 UTC in reply to "RE[2]: Times 2"
Karitku Member since:
2006-01-12

Lol, do you understand that if you desing game on PC IT WON'T PORT STRAIGHT TO iPhone or other same category platform! Making games on PC, XBOX360 and PS3 seems to be rather easy for most companies so I fail to see problem. Perhaps biggest problem is that it isn't worth making games on Linux or Mac. Look CCP, maker of Eve online, they dropped Linux since it was too much waste since they got it working on Wine. Perhaps this was even slightly news if game studio like Epic Games would say to dump DirectX but they aren't, they love it. Article is FUD and I'm not suprised it was bringed here by Mr. Standard Fantastic Kramen.

Reply Score: 1

RE[3]: Times 2
by moondevil on Sat 9th Jan 2010 18:54 UTC in reply to "RE[2]: Times 2"
moondevil Member since:
2005-07-08


...
1. "OpenGL is supported on every gaming platform, including Mac, Windows, Linux, PS3 (as a GCM wrapper), Wii, iPhone, PSP, and DS. Well, every gaming platform except for the XBox"

...

In case you missed it, the issue is NOT about just Mac and Linux games and gamers, rather it is about Mac, Linux, PS3, Wii, PSP, DS, Windows XP and iPhone.



This is false and keeps being said by people without real experience about console development.

The only games console that provides OpenGL support is the PS3 and it is not the standard one but OpenGL ES which has its own way of dealing with the API.

As for the other consoles the graphics API are GL like but they are NOT OpenGL.

I really don't know where some people take the idea that besides Microsoft everyone else is using OpenGL.

Please attend some Game Developer Conferences before go talking about graphics APIs like this.

Having said this, I am a big OpenGL fan and I hope it lives on, but in the end it is just another graphics API like many others.

Reply Score: 3

RE[4]: Times 2
by KAMiKAZOW on Sun 10th Jan 2010 12:34 UTC in reply to "RE[3]: Times 2"
KAMiKAZOW Member since:
2005-07-06

As for the other consoles the graphics API are GL like but they are NOT OpenGL.

Isn't porting between similar APIs still easier than from one API to a completely different one?

Reply Score: 2

RE[5]: Times 2
by moondevil on Mon 11th Jan 2010 10:24 UTC in reply to "RE[4]: Times 2"
moondevil Member since:
2005-07-08

No, because being similar does not mean that your calls are easy to map, specially if you have hardware dependent optimizations.

Reply Score: 1

RE[2]: Times 2
by JAlexoid on Sat 9th Jan 2010 15:49 UTC in reply to "RE: Times 2"
JAlexoid Member since:
2009-05-19

And these days most people develop with game engines, unless you are developing a game engine.
Why does idSoftware still do their engines in both APIs then?

Edited 2010-01-09 15:50 UTC

Reply Score: 1

Revealed Preferences
by telns on Fri 8th Jan 2010 21:49 UTC
telns
Member since:
2009-06-18

It seems to me, as a matter of revealed preferences among game developers that DirectX must have some useful qualities or one wouldn't have seen the tremendous exodus from one-off schemes and OpenGL when DirectX was still young.

The article implies this transition began in earnest with the launch of Vista, but in my experience as a consumer DirectX was dominant long before Vista was launched. More like 1998 than 2005.

MS wasn't paying all those game developers to switch. My impression had been that many companies found it faster to develop under DirectX. Speedy development is always important in software, but vital for games. That doesn't make OpenGL bad or even mean that on a feature for feature basis OpenGL isn't better, only that many companies find it faster to develop a game with DirectX than OpenGL while still accessing an acceptable level of features and performance.

The article also dismisses DX10 as mainly marketing hype without anything new. That isn't the case, as DX10 was a major release with a new driver model, shader model, etc. The marketing may have been only hype, but there were real changes under the hood.

Reply Score: 4

RE: Revealed Preferences
by boldingd on Fri 8th Jan 2010 22:09 UTC in reply to "Revealed Preferences"
boldingd Member since:
2009-02-19

It seems to me, as a matter of revealed preferences among game developers that DirectX must have some useful qualities or one wouldn't have seen the tremendous exodus from one-off schemes and OpenGL when DirectX was still young.

The article implies this transition began in earnest with the launch of Vista, but in my experience as a consumer DirectX was dominant long before Vista was launched. More like 1998 than 2005.


There are several reasons. One of the obvious and familiar ones is that DirectX is built directly into the primary target platform for most games. Another is driver quality: OpenGL drivers are of notoriously poorer quality that DirectX drivers, for several reasons. And then you have lots of cruft in the API: you basically have several different, overlapping Fundamental Theories of Operation, to coin a phrase, build into the OpenGL API, because, until fairly recently, they'd never deprecated anything. This makes OpenGL a very large, complicated, difficult-to-learn, and very-not-orthogonal API.

Addressing the last two problems has been the primary thrust of the OpenGL 3.0, 3.1 and 3.2 releases, where Khronos has defined a deprecation procedure, and flagged several very old interfaces as "deprecated." Last I checked, those drivers where very slowly showing up and getting distributed.


Edit: Oh, right! And part of the reason that people jumped ship from OpenGL is because complaints started to mount about the massive, hideous API and poor driver quality very early on, and for a loooong time, Khronos just ignored the problems and sat on OGL 2.1 and did nothing at all, Microsoft-style. Many people did not like this, and moved to a platform with driver testing, a saner, more orthogonal API and a changing version number.

Edited 2010-01-08 22:11 UTC

Reply Score: 7

RE[2]: Revealed Preferences
by f0dder on Sat 9th Jan 2010 10:57 UTC in reply to "RE: Revealed Preferences"
f0dder Member since:
2009-08-05

And on top of all this, we can add that the OpenGL committee is extremely slow-working, leaving developers forced to use vendor extensions to use the latest features - whereas DirectX adopts (or even pushes) things faster in a more vendor-neutral way.

Reply Score: 2

RE[3]: Revealed Preferences
by KAMiKAZOW on Sun 10th Jan 2010 12:36 UTC in reply to "RE[2]: Revealed Preferences"
KAMiKAZOW Member since:
2005-07-06

And on top of all this, we can add that the OpenGL committee is extremely slow-working, leaving developers forced to use vendor extensions to use the latest features - whereas DirectX adopts (or even pushes) things faster in a more vendor-neutral way.

Three OpenGL 3 revisions within 1 year.
The last three DirectX revisions were done within 3 years.

--> Today OpenGL revision happen 9x faster.

(OpenGL revisions were slow in 1.x and 2.x days, but those are over.)

Edited 2010-01-10 12:37 UTC

Reply Score: 2

RE[4]: Revealed Preferences
by boldingd on Mon 11th Jan 2010 17:04 UTC in reply to "RE[3]: Revealed Preferences"
boldingd Member since:
2009-02-19

While I don't disagree with you, I would point out, the "bad old days" of 2.0/2.1 are a large part of why many developers jumped ship to DirectX. People wanted a clean API, basically focused on buffer and shader loading, with all this other garbage cut out... and the ARB did pretty much nothing to give it to them, for a long while.

Reply Score: 2

RE: Revealed Preferences
by BallmerKnowsBest on Sat 9th Jan 2010 15:48 UTC in reply to "Revealed Preferences"
BallmerKnowsBest Member since:
2008-06-02

The article implies this transition began in earnest with the launch of Vista, but in my experience as a consumer DirectX was dominant long before Vista was launched. More like 1998 than 2005.


Earlier than that, WinQuake & GLQuake both required DirectX.

It's a pretty stupid to compare DirectX and OpenGL, though. There's no either/or choice between them and the majority (all?) OpenGL games for Windows require DirectX too.

Although the article (or the summary) appears to have been written by someone with no clue what he's talking about. Even most gamers know there's a difference between DirectX and Direct3D, and OpenGL and SDL.

Reply Score: 2

RE: Revealed Preferences
by JAlexoid on Sat 9th Jan 2010 16:10 UTC in reply to "Revealed Preferences"
JAlexoid Member since:
2009-05-19

The article also dismisses DX10 as mainly marketing hype without anything new. That isn't the case, as DX10 was a major release with a new driver model, shader model, etc. The marketing may have been only hype, but there were real changes under the hood.


To be fair. The article states that there is nothing new in DX10 that is not already in OpenGL.

Reply Score: 2

it's simple really
by poundsmack on Fri 8th Jan 2010 23:01 UTC
poundsmack
Member since:
2005-07-13

currently Direct X is a more capable (though obviously platform restrictive) system than OpenGL. I say this as someone who has spent a lot of time developing hoby games and a decent amount of time developing advanced 3D stuff. OpenGL only recently caught up to Direct X with its 3.2 release, and while it is a great release (the best yet as far as i am concerend) its still not on par with Direct X 11.

That being said, I use OpenGL for many reasons such as platform portability and the fact that I WANT OpenGL to succeed and get better and better (as it does with each new release).

Reply Score: 7

RE: it's simple really
by JAlexoid on Sat 9th Jan 2010 16:15 UTC in reply to "it's simple really"
JAlexoid Member since:
2009-05-19

currently Direct X is a more capable (though obviously platform restrictive) system than OpenGL. I say this as someone who has spent a lot of time developing hoby games and a decent amount of time developing advanced 3D stuff. OpenGL only recently caught up to Direct X with its 3.2 release, and while it is a great release (the best yet as far as i am concerend) its still not on par with Direct X 11.

That being said, I use OpenGL for many reasons such as platform portability and the fact that I WANT OpenGL to succeed and get better and better (as it does with each new release).


And yet, you are missing the point of what the original author was stressing. You want all features to be built into the API as standard, but OpenGL was designed in mind that a lot of advanced stuff will be done via the vendor extensions. And that is where OpenGL beats DX.

Reply Score: 1

tylerdurden
Member since:
2009-03-17

DirectX is not just a graphics API.

So technically we should be comparing Direct3D with OpenGL, DirectX is a superset of multimedia interfaces thus comparing it to OpenGL is a tad like apples to oranges.

As much as I don't like Microsoft. They did get this one right since they offered a relative uniform interface for multimedia apps which abstracted a lot of the underlying hardware. Even if OpenGL catches up to Direct3D, one still has to contemplate audio, input, and other issues.

Reply Score: 3

KAMiKAZOW Member since:
2005-07-06

OpenGL is not the only API by the Khronos Group.

Reply Score: 2

tylerdurden Member since:
2009-03-17

Huh? and that has exactly what to do with the post I wrote?

Reply Score: 1

KAMiKAZOW Member since:
2005-07-06

You wrote that Direct3D is only a part of DirectX that offers various other APIs for other aspects.

And just like DirectX and its subset Direct3D, the Khronos Group also offers other APIs that complement OpenGL. The API set does not match DirectX 100% (Khronos has no input API for example), but Khronos still has a rich set of multimedia-related APIs: http://www.khronos.org/about/
For game development there's also OpenAL as sound API. Granted, that is not handled by Khronos, but it's widely used.

Reply Score: 2

FUD?
by smashIt on Sat 9th Jan 2010 03:40 UTC
smashIt
Member since:
2005-07-06

this article could be called pure FUD

OpenGL is the result of an SGI-MS project that completely stagnated because of SGI during the 1.x times.
at that time ms started to develope directx to get rid of all the cruft

directx had it's first boom after the release of DX5 (iirc they droped backwardscompatability with it)

and calling opengl open (in the sense of free unlike in beer) is a bit misleading when you consider that you had to pay a license-fee to implement it (but not anymore)

and a final word to wolfire:
half your sales being on alternative platforms doesn't mean that you're doing sooooo well there, but that noone on windows gives a shit about your game

Reply Score: 1

RE: FUD?
by gtada on Sat 9th Jan 2010 08:28 UTC in reply to "FUD?"
gtada Member since:
2005-10-12

OpenGL is the result of an SGI-MS project that completely stagnated because of SGI during the 1.x times.
at that time ms started to develope directx to get rid of all the cruft


OpenGL was developed from IrisGL at SGI. The SGI/Microsoft project was Fahrenheit, not OpenGL.

Reply Score: 3

RE: FUD?
by tylerdurden on Sat 9th Jan 2010 18:49 UTC in reply to "FUD?"
tylerdurden Member since:
2009-03-17

You don't know what "open" means, and you did not even know that OpenGL has nothing to do with Microsoft.

Hey but don't let your total lack of knowledge about the facts stop you from correcting other people.... LOL

Reply Score: 1

RE: FUD?
by KAMiKAZOW on Sun 10th Jan 2010 13:14 UTC in reply to "FUD?"
KAMiKAZOW Member since:
2005-07-06

calling opengl open (in the sense of free unlike in beer) is a bit misleading when you consider that you had to pay a license-fee to implement it (but not anymore)

The Mesa3D project never paid any fees to implement OpenGL.

Reply Score: 2

50% of purchases...
by FriendlySport on Sat 9th Jan 2010 03:58 UTC
FriendlySport
Member since:
2010-01-04

The 50% of purchases statistic is not necessarily due to the market being there. Consider this exaggeration: if you're the only company making commercial games for Macs and Linux, then you ARE the market. The multi-platform part becomes a selling point.

Now, if you're a huge game developer developing a top-selling game, gamers won't care that their Mac or Linux-powered machine cant play it. The platform isn't the selling point when the game is so popular. It's not as if Call of Duty: Modern Warfare 2 were released for Macs and Linux then it'd be anywhere near 50% there.


Also, as a hobbiest game developer, I have a couple big problems with OpenGL:
-Mac OS X doesn't support OpenGL 3.0 or higher. So if I were making a game with OpenGL, I would stick with the less-featured legacy that is OpenGL 2.0. The problem here is 3.0 deprecates pieces required to use 2.0, so I'd have to write two fairly different renderers if I wanted to utilize them both.
-OpenGL on Windows isn't as robust with obscure hardware configurations. When a user has multiple graphics adapters and/or displays, it's hard to know exactly how OpenGL will react. With DXGI, it's better-documented and highly-configurable.

Those are pretty petty reasons, but I like robustness, and the easiest way to make a robust game is with Direct3D on Windows.

Reply Score: 1

RE: 50% of purchases...
by tyrione on Sat 9th Jan 2010 06:49 UTC in reply to "50% of purchases..."
tyrione Member since:
2005-11-21

The 50% of purchases statistic is not necessarily due to the market being there. Consider this exaggeration: if you're the only company making commercial games for Macs and Linux, then you ARE the market. The multi-platform part becomes a selling point.

Now, if you're a huge game developer developing a top-selling game, gamers won't care that their Mac or Linux-powered machine cant play it. The platform isn't the selling point when the game is so popular. It's not as if Call of Duty: Modern Warfare 2 were released for Macs and Linux then it'd be anywhere near 50% there.


Also, as a hobbiest game developer, I have a couple big problems with OpenGL:
-Mac OS X doesn't support OpenGL 3.0 or higher. So if I were making a game with OpenGL, I would stick with the less-featured legacy that is OpenGL 2.0. The problem here is 3.0 deprecates pieces required to use 2.0, so I'd have to write two fairly different renderers if I wanted to utilize them both.
-OpenGL on Windows isn't as robust with obscure hardware configurations. When a user has multiple graphics adapters and/or displays, it's hard to know exactly how OpenGL will react. With DXGI, it's better-documented and highly-configurable.

Those are pretty petty reasons, but I like robustness, and the easiest way to make a robust game is with Direct3D on Windows.


Not yet, officially.

Reply Score: 2

RE: 50% of purchases...
by JAlexoid on Sat 9th Jan 2010 16:19 UTC in reply to "50% of purchases..."
JAlexoid Member since:
2009-05-19


-Mac OS X doesn't support OpenGL 3.0 or higher. So if I were making a game with OpenGL, I would stick with the less-featured legacy that is OpenGL 2.0. The problem here is 3.0 deprecates pieces required to use 2.0, so I'd have to write two fairly different renderers if I wanted to utilize them both.


And since "options" and "Apple" are not compatible words, you can easily use vendor supplied advanced functionality on Macs. Just because you will definitely know what set of hardware your software is running on.

Reply Score: 1

RE[2]: 50% of purchases...
by KAMiKAZOW on Sun 10th Jan 2010 13:20 UTC in reply to "RE: 50% of purchases..."
KAMiKAZOW Member since:
2005-07-06

"options" and "Apple" are not compatible words

Do you have any proof that Apple forbids GPU vendors to offer OpenGL 3.x compatible drivers?
Why is Mesa3D compatible with MacOS when Apple supposedly forbids options? http://mesa3d.org/systems.html

Troll...

Reply Score: 2

RE[3]: 50% of purchases...
by moondevil on Mon 11th Jan 2010 10:27 UTC in reply to "RE[2]: 50% of purchases..."
moondevil Member since:
2005-07-08

If you know your programming, you will be aware that Mesa3D is a SOFTWARE renderer.

Quite nice to try some algorithms, but that is about it.

Reply Score: 1

RE[4]: 50% of purchases...
by KAMiKAZOW on Mon 11th Jan 2010 18:38 UTC in reply to "RE[3]: 50% of purchases..."
KAMiKAZOW Member since:
2005-07-06

I asked JAlexoid: "Do you have any proof that Apple forbids GPU vendors to offer OpenGL 3.x compatible drivers?"

So does Apple forbid that?

Reply Score: 2

RE: 50% of purchases...
by nt_jerkface on Sat 9th Jan 2010 17:53 UTC in reply to "50% of purchases..."
nt_jerkface Member since:
2009-08-26

It's not as if Call of Duty: Modern Warfare 2 were released for Macs and Linux then it'd be anywhere near 50% there.


Good point. There's also the question of whether or not targeting Macs makes sense for high-end games since so few have decent video cards. Game companies often ignore the pc and only target consoles these days for valid reasons so I think it is incredibly simplistic to just say "use opengl and target everyone" when for some types of games that would be a complete waste of time.

Reply Score: 2

RE: 50% of purchases...
by KAMiKAZOW on Sun 10th Jan 2010 13:16 UTC in reply to "50% of purchases..."
KAMiKAZOW Member since:
2005-07-06

Mac OS X doesn't support OpenGL 3.0 or higher.

Since when are GPU vendors forbidden to offer OpenGL 3.x drivers for Mac?
Just because Apple doesn't ship them by default? MS does not ship OpenGL 3.x drivers by default either, yet NVidia and AMD manage it to offer them.

Reply Score: 2

Comment by Michael Oliveira
by Michael Oliveira on Sat 9th Jan 2010 05:10 UTC
Michael Oliveira
Member since:
2005-07-07

Another great article that could be put into main page

Reply Score: 2

RE: Comment by Michael Oliveira
by Kroc on Sat 9th Jan 2010 10:25 UTC in reply to "Comment by Michael Oliveira"
Kroc Member since:
2005-11-10

I don’t have the programming / OpenGL knowledge to write a long item about it. The article is very self-explanatory and there’s not any "news" I can add to it.

Reply Score: 1

What?
by cb_osn on Sat 9th Jan 2010 05:25 UTC
cb_osn
Member since:
2006-02-26

FTA:

but OpenGL has always had the best features, first, and in a consistent and transparent way

This is patently false and is the exact reason why Direct3D obliterated OpenGL. The pace of updates for standard OpenGL was absolutely glacial resulting in ATI and NVIDIA implementing custom extensions to expose the latest hardware features. For web developers reading this, imagine -moz-border-radius/-webkit-border-radius but several orders of magnitude more complex and pervasive throughout development. OpenGL code simply became unmanageable for anything more complex than basic texture mapped 3D rasterization.

The situation is better now with OpenGL 3.0, but likely to become a problem again with the next batch of hardware unless Khronos can keep up.

Reply Score: 7

RE: What?
by JAlexoid on Sat 9th Jan 2010 16:22 UTC in reply to "What?"
JAlexoid Member since:
2009-05-19

This is patently false and is the exact reason why Direct3D obliterated OpenGL. The pace of updates for standard OpenGL was absolutely glacial resulting in ATI and NVIDIA implementing custom extensions to expose the latest hardware features. For web developers reading this, imagine -moz-border-radius/-webkit-border-radius but several orders of magnitude more complex and pervasive throughout development. OpenGL code simply became unmanageable for anything more complex than basic texture mapped 3D rasterization.

The situation is better now with OpenGL 3.0, but likely to become a problem again with the next batch of hardware unless Khronos can keep up.


That may be, but I'd still go with the judgement of John Carmack.

Reply Score: 2

RE[2]: What?
by nt_jerkface on Sat 9th Jan 2010 18:08 UTC in reply to "RE: What?"
nt_jerkface Member since:
2009-08-26


That may be, but I'd still go with the judgement of John Carmack.


I'd rather go with the judgement of the majority of game developers.

John Carmack is of course a great developer but he's always had an interest in cross platform development that he will prioritize over costs and productivity.

Reply Score: 1

RE[2]: What?
by n4cer on Sat 9th Jan 2010 20:05 UTC in reply to "RE: What?"
n4cer Member since:
2005-07-06

"This is patently false and is the exact reason why Direct3D obliterated OpenGL. The pace of updates for standard OpenGL was absolutely glacial resulting in ATI and NVIDIA implementing custom extensions to expose the latest hardware features. For web developers reading this, imagine -moz-border-radius/-webkit-border-radius but several orders of magnitude more complex and pervasive throughout development. OpenGL code simply became unmanageable for anything more complex than basic texture mapped 3D rasterization. The situation is better now with OpenGL 3.0, but likely to become a problem again with the next batch of hardware unless Khronos can keep up.
That may be, but I'd still go with the judgement of John Carmack. "

Unless things have changed, Carmack uses a 360 as his primary dev platform (Tech5/Rage).
http://techreport.com/articles.x/8665/1

Reply Score: 2

It's probably already been said...
by thavith_osn on Sat 9th Jan 2010 06:18 UTC
thavith_osn
Member since:
2005-07-11

...but imagine if MS had decided not to try and lock people into their OS and supported OpenGL, where would OpenGL be now.

Apple is a good example of this, they have added a lot of nice features to OpenGL when it didn't quite meet what they needed... MS could have added a lot of features they thought were lacking too, that way everyone wins...

You can bet their version of Office for the web will only run with IE, or need SilverLight, something to lock you into to a MS standard...

Reply Score: 2

Einlander Member since:
2009-07-08

Did you miss that video Google made demoing Chrome OS where Chrome recognized a word fie and loaded it up in Office for web?
Microsoft is not as evil as they use to be. Now they want to make a product that workds with more browsers so they can make more money. Yup, i smell lock in. /s

Reply Score: 1

Kroc Member since:
2005-11-10

"Works" is a relative term. Office live will also use Silverlight to fill in all the empty holes in IE that other browsers handle fine, but at the same time Microsoft will be using Office Live as yet another delivery mechanism to get Silverlight on as many PCs as possible to place it over Flash.

Microsoft’s long term goal is to usurp HTML/JS/CSS, one way or another.

Reply Score: 1

nt_jerkface Member since:
2009-08-26

Apple is a good example of this, they have added a lot of nice features to OpenGL when it didn't quite meet what they needed... MS could have added a lot of features they thought were lacking too, that way everyone wins...


Oh give me a break. MS has provided way more to OpenGl than Apple by way of adding features to DirectX for OpenGL to copy.

Apple has never cared about gaming and has only recently supported it through the iphone since games have been the top grossing apps for them.

Just read about Valve's experience:
http://www.macrumors.com/2007/10/01/valve-softwares-co-founder-expl...

Reply Score: 3

boldingd Member since:
2009-02-19

From my limited understanding, I think most of Apple's registered extensions are pretty much only used on the Mac platform. I'm not aware of any substantive contribution they've made to the OpenGL API that has wide use on other (non-Mac) platforms. If they have made such a contribution, I'd be interested in finding out what it is.

Reply Score: 2

Standards?
by Delgarde on Sat 9th Jan 2010 11:04 UTC
Delgarde
Member since:
2008-08-19

Will we see yet another generation of Microsoft ignoring the standards and going their own way with a 'WebDirectX'?


What do you mean, "ignoring the standards"? On Windows, and on X-Box, DirectX *is* the standard. Sure, it'd be nice if game developers wrote cross-platform code, but you're deluded if you think OpenGL is some kind of blessed standard handed down from the gods.

Reply Score: 4

RE: Standards?
by Kroc on Sat 9th Jan 2010 11:12 UTC in reply to "Standards?"
Kroc Member since:
2005-11-10

I was specifically referring to WebGL which is partially implemented in two browsers (nightlies) at this moment. The fact is that if Microsoft want to participate in this future of the web, then they would have to implement WebGL, which would increase the number of developers learning OpenGL, which would increase the number of developers who go on to write games using OpenGL. Can you see the pattern here?

Reply Score: 1

RE: Standards?
by lemur2 on Sat 9th Jan 2010 11:17 UTC in reply to "Standards?"
lemur2 Member since:
2007-02-17

"Will we see yet another generation of Microsoft ignoring the standards and going their own way with a 'WebDirectX'?


What do you mean, "ignoring the standards"? On Windows, and on X-Box, DirectX *is* the standard. Sure, it'd be nice if game developers wrote cross-platform code, but you're deluded if you think OpenGL is some kind of blessed standard handed down from the gods.
"

http://www.openscenegraph.org/projects/osg
The OpenSceneGraph is an open source high performance 3D graphics toolkit, used by application developers in fields such as visual simulation, games, virtual reality, scientific visualization and modelling. Written entirely in Standard C++ and OpenGL it runs on all Windows platforms, OSX, GNU/Linux, IRIX, Solaris, HP-Ux, AIX and FreeBSD operating systems. The OpenSceneGraph is now well established as the world leading scene graph technology, used widely in the vis-sim, space, scientific, oil-gas, games and virtual reality industries.


OK, so it doesn't say "standard". But for all practical intents and purposes, it has no peer as a standard, because DirectX is so limited in the platforms which support it.

Some more links which may be of interest:
http://unigine.com/
(This one is not open, but it is cross-platform).
http://www.phoronix.com/scan.php?page=news_item&px=NzIyOQ

http://en.wikipedia.org/wiki/Simple_DirectMedia_Layer
(That one, in conjunction with OpenGL, is the open equivalent of DirectX)

http://en.wikipedia.org/wiki/OpenSceneGraph
(This one, mentioned above, is open)

http://en.wikipedia.org/wiki/Blender_%28software%29

http://en.wikipedia.org/wiki/FlightGear
(An example of the kind of thing one can do these days with OpenSceneGraph, SDL and Blender)

As for what this kind of software on Linux is used for, check this out:
http://www.reallylinux.com/docs/avataruseslinux.shtml

OpenGL is the standard. It works even on Windows, but lately Windows has imposed a significant performance hit on OpenGL, so serious graphics rendering isn't done on Windows.

http://en.wikipedia.org/wiki/Weta_Digital

Linux. More precisely: "The underlying operating system, Linux RHEL (hundreds of HP blade servers running as Linux cluster)".

Edited 2010-01-09 11:24 UTC

Reply Score: 2

RE[2]: Standards?
by bluedodo on Sat 9th Jan 2010 14:23 UTC in reply to "RE: Standards?"
bluedodo Member since:
2006-03-26

but lately Windows has imposed a significant performance hit on OpenGL,

This is not true if OpenGL is slow on Vista or 7 then it's ATI's or Nvidia's OpenGL driver at fault.

Reply Score: 1

RE[2]: Standards?
by nt_jerkface on Sat 9th Jan 2010 18:27 UTC in reply to "RE: Standards?"
nt_jerkface Member since:
2009-08-26

OpenGL is the standard.


Who set this standard? The board of lemur's imagination?

In reality most of the popular 3D game engines are designed around DirectX. OpenGL has gotten better but for years it lagged well behind DirectX. I kind of thought that was common knowledge.

Reply Score: 2

RE[3]: Standards?
by KAMiKAZOW on Sun 10th Jan 2010 13:24 UTC in reply to "RE[2]: Standards?"
KAMiKAZOW Member since:
2005-07-06

"OpenGL is the standard.


Who set this standard?
"


A recognized standards organization with way more members than only Microsoft: http://www.khronos.org/about/

Reply Score: 2

RE[4]: Standards?
by nt_jerkface on Sun 10th Jan 2010 19:54 UTC in reply to "RE[3]: Standards?"
nt_jerkface Member since:
2009-08-26


A recognized standards organization with way more members than only Microsoft: http://www.khronos.org/about/


Well by that definition a 2 member board also has more members.

Would you say that a company that releases a game on xbla is not following standards by using Directx? Of course not, so it is silly to lament Microsoft for developing the own api. OpenGL has been copying Directx for years which calls into the idea that widespread collaboration is better for technological progress.

Reply Score: 2

RE[5]: Standards?
by KAMiKAZOW on Sun 10th Jan 2010 21:23 UTC in reply to "RE[4]: Standards?"
KAMiKAZOW Member since:
2005-07-06

it is silly to lament Microsoft for developing the own api

No, it's not.
These days MS is holding back innovation on purpose, because these days the Xbox is MS' gaming platform and MS does not want Xbox 360 and Windows to diverge far.

Yes, back in the day MS had more DirectX revisions than OpenGL had, but today it's different.

DirectX 9.0c was introduced in 2004 and lasted four years.
DirectX 10 lasted three years.
DirectX 11 will probably stay the current release until the next Xbox is released.

OTOH after Khronos Group took over maintaining OpenGL, it managed to release three versions of OpenGL 3.x within a year. It's now the driving factor in innovation.
The rest of the industry does not want to be held back, just because MS' focus is not getting Xbox profitable at the expense of Windows.

Especially in the handheld space where no one cares about any MS-produced 3D technology any longer -- OpenGL ES is omnipresent there and implemented by different OSes.

Reply Score: 2

RE[6]: Standards?
by tylerdurden on Sun 10th Jan 2010 22:10 UTC in reply to "RE[5]: Standards?"
tylerdurden Member since:
2009-03-17

OpenGL is just getting some of the features which have been available in Direct3D for years, i.e. proper programmable shader support, very large scene graphs, etc.

A project that is playing catch up with competing products is not in a position of technological leadership, regardless of the speed it pumps out revisions.

Reply Score: 1

RE[7]: Standards?
by KAMiKAZOW on Mon 11th Jan 2010 03:15 UTC in reply to "RE[6]: Standards?"
KAMiKAZOW Member since:
2005-07-06

OpenGL is just getting some of the features which have been available in Direct3D for years

You're kidding, right?
DirectX got the High Level Shader Language with DirectX 9 in December 2002.
OpenGL's GLSL was introduced as extension with OpenGL 1.4 in July 2002.

Interesting how you spin OpenGL's half-year headstart into "years later"....

NVidia's Cg which is equally compatible with Direct3D and OpenGL was introduced in June 2002, btw.

Reply Score: 2

RE[6]: Standards?
by moondevil on Mon 11th Jan 2010 10:29 UTC in reply to "RE[5]: Standards?"
moondevil Member since:
2005-07-08

DirectX 9.0 SDK was being updated every six months!

Reply Score: 1

RE[2]: Standards?
by moondevil on Sat 9th Jan 2010 19:04 UTC in reply to "RE: Standards?"
moondevil Member since:
2005-07-08


...

http://en.wikipedia.org/wiki/Simple_DirectMedia_Layer
(That one, in conjunction with OpenGL, is the open equivalent of DirectX)

http://en.wikipedia.org/wiki/OpenSceneGraph
(This one, mentioned above, is open)

...

OpenGL is the standard. It works even on Windows, but lately Windows has imposed a significant performance hit on OpenGL, so serious graphics rendering isn't done on Windows.
...



SDL is a great toolkit, but it is not at the same level of DirectX. You can only say that if you don't have any idea of what the DirectX SDK has to offer.

This is what unfortunely keeps many people away from OpenGL, the lack of proper tools when compared with the support and tools available on the DirectX ecosystem.

Do you know that Maya, 3D Studio SolidWorks, CATIA and similar packages also have DirectX backend and are mainly used in Windows? Isn't that serious graphics rendering?

Reply Score: 2

RE[3]: Standards?
by lemur2 on Sun 10th Jan 2010 07:48 UTC in reply to "RE[2]: Standards?"
lemur2 Member since:
2007-02-17

Do you know that Maya, 3D Studio SolidWorks, CATIA and similar packages also have DirectX backend and are mainly used in Windows? Isn't that serious graphics rendering?


No it isn't. The odd single workstation running such applications is trivial. Rendering a 3D CGI movie such as Avatar, or any of these other movies:

http://www.wetafx.co.nz/features/

on an array of hundreds of HP Blade servers running RHEL, now THAT is serious rendering.

http://www.aussiemuslims.com/forums/showthread.php?p=390118

Edited 2010-01-10 07:50 UTC

Reply Score: 1

RE[4]: Standards?
by WereCatf on Sun 10th Jan 2010 08:01 UTC in reply to "RE[3]: Standards?"
WereCatf Member since:
2006-02-15

So, your argument is that the more users and/or computers there are the more serious and professional something is?

Reply Score: 2

RE[5]: Standards?
by lemur2 on Sun 10th Jan 2010 09:08 UTC in reply to "RE[4]: Standards?"
lemur2 Member since:
2007-02-17

So, your argument is that the more users and/or computers there are the more serious and professional something is?


No. My arguement is that the larger scope of the task, requiring several orders of magnitude more computation, the "more serious" is the rendering.

It is a tautology, really, when you come to think of it.

http://en.wikipedia.org/wiki/Tautology_%28rhetoric%29

That doesn't mean it is wrong though ... in fact it means it is right. Self evident.

What I said was:
now THAT is serious rendering


Rendering a full-length, 3D, high-definition, CGI-intense movie such as Avatar is a more serious rendering task, very much so, when compared to a single program running on a single x86 workstation.

Edited 2010-01-10 09:15 UTC

Reply Score: 2

RE[6]: Standards?
by moondevil on Sun 10th Jan 2010 09:29 UTC in reply to "RE[5]: Standards?"
moondevil Member since:
2005-07-08

If you knew anything about Hollywood movie production you wouldn't be speaking such nonsense.

First the only reason most studios are using Linux is money.

Long before Windows and Linux existed those studios were using SGI workstations and other Unix systems.

Keeping using Linux allows the programs to be easily ported to an Unix system that does not cost anything, and they don't have to train anyone.

Second having Linux means that they don't have to pay a license for each computer, which on a render farm means LOTS of money.

Third, most rendering tasks are CPU/GPGPU intensive and they don't have anything to do with which API is being used.

Actually most studios have Windows based Workstations, and only the render farm is Linux based.

Sure you can give me toons of links back, but the way 2 or 3 studios work, is not how most of them are working.

Reply Score: 2

RE[7]: Standards?
by lemur2 on Sun 10th Jan 2010 09:58 UTC in reply to "RE[6]: Standards?"
lemur2 Member since:
2007-02-17

If you knew anything about Hollywood movie production you wouldn't be speaking such nonsense.

First the only reason most studios are using Linux is money.

Long before Windows and Linux existed those studios were using SGI workstations and other Unix systems.

Keeping using Linux allows the programs to be easily ported to an Unix system that does not cost anything, and they don't have to train anyone.

Second having Linux means that they don't have to pay a license for each computer, which on a render farm means LOTS of money.

Third, most rendering tasks are CPU/GPGPU intensive and they don't have anything to do with which API is being used.

Actually most studios have Windows based Workstations, and only the render farm is Linux based.

Sure you can give me toons of links back, but the way 2 or 3 studios work, is not how most of them are working.


A studio, or indeed any system that uses a large array of processors, would be insane to use Windows or DirectX. Out of their cotton pickin minds.

http://scitech.blogs.cnn.com/2009/12/09/military-purchases-2200-ps3...

http://www.top500.org/stats/list/34/osfam

It would appear that most of the organisations that have a purpose for a large array of computers, and the funding to buy same, aren't insane.

Regardless, more platforms use OpenGL than use DirectX. Way more. DirectX is found only on Windows desktops and Xbox games consoles.

Walk into a store which sells electronic games. Pick any one, perhaps this one will do:

http://en.wikipedia.org/wiki/EB_Games

You will find some DirectX games being sold therein, these can be identified because they will have either "for PC" or "for Xbox" written on the packaging.

The rest of the games in the store, for all of the non-Microsoft platforms, will be OpenGL. These are in the majority.

OpenGL is the defacto standard in any sensible way of looking at this.

Reply Score: 1

RE[7]: Standards?
by lemur2 on Sun 10th Jan 2010 10:18 UTC in reply to "RE[6]: Standards?"
lemur2 Member since:
2007-02-17

If you knew anything about Hollywood movie production you wouldn't be speaking such nonsense.


My own field of work is more involved in simulation (specifically Flight Training Devices, FTDs, and Integrated Procedure Trainers, IPTs) than movie production.

This kind of thing is what we build:
http://www.pilatus-aircraft.com/html/en/products/index_1103.asp?Nav...
http://en.wikipedia.org/wiki/Flight_simulator#Flight_simulators_and...
(we don't do Full Flight Simulators)

These guys are by far & away the serious competition:
http://www.cae.com/en/sim.products/sim.products.asp

In the past when we started we have used machines like this:
http://www.sgi.com/products/remarketed/onyx3000/

But more lately we have used this company:
http://www.ccur.com/Concurrent_ImaGen_COTS_Visual_Server.aspx
http://www.ccur.com/Concurrent_Visual_Rending_Providers.aspx

Warning, PDF: http://www.ccur.com/pdf/RedHawk.pdf

Windows nowhere to be seen.

Edited 2010-01-10 10:33 UTC

Reply Score: 2

RE[7]: Standards?
by boldingd on Mon 11th Jan 2010 17:22 UTC in reply to "RE[6]: Standards?"
boldingd Member since:
2009-02-19

First the only reason most studios are using Linux is money.

Long before Windows and Linux existed those studios were using SGI workstations and other Unix systems.

Keeping using Linux allows the programs to be easily ported to an Unix system that does not cost anything, and they don't have to train anyone.


Yeah, sure, right, because modern CG movies are being rendered by a ten-year-old-or-more renderer. And the differences between SGI Unix and RHEL are so very minor that you could just copy that binary over and keep on using it just the same as you always did, right? (Hint: no)

Second having Linux means that they don't have to pay a license for each computer, which on a render farm means LOTS of money.


Except... you do pay for RHEL -- which I believe is what Lemur said was being used -- just like you'd pay for Windows.

Reply Score: 2

RE[6]: Standards?
by WereCatf on Sun 10th Jan 2010 09:34 UTC in reply to "RE[5]: Standards?"
WereCatf Member since:
2006-02-15

No. My arguement is that the larger scope of the task, requiring several orders of magnitude more computation, the "more serious" is the rendering.

Ok, so, your argument is that the more CPU-time a given task requires the more important it is. That could be argued about, but atleast that is an understandable argument.

Rendering a full-length, 3D, high-definition, CGI-intense movie such as Avatar is a more serious rendering task, very much so, when compared to a single program running on a single x86 workstation.

I still don't really understand how that has anything to do with the topic at hand. The rendering is done in software so it has nothing to do with OpenGL. The only part where OpenGL has anything to do with anything in that process is when people create the content to be rendered, and we don't know if the workstations used to create the content itself was running Windows or Linux, or something else.

Reply Score: 2

RE[7]: Standards?
by lemur2 on Sun 10th Jan 2010 11:42 UTC in reply to "RE[6]: Standards?"
lemur2 Member since:
2007-02-17

I still don't really understand how that has anything to do with the topic at hand.


Direct3D and DirectDraw, which are major parts of DirectX, are graphics rendering APIs.

http://en.wikipedia.org/wiki/Direct3D
http://en.wikipedia.org/wiki/DirectDraw

The rest of your graphics software stack, for both creation and production of computer-generated imagery (CGI), has to be written with this API in mind. It sets the target format of the whole stack of software.

In simulation, the original standard was OpenGL Performer:

http://en.wikipedia.org/wiki/OpenGL_Performer

but now this has morphed into a number of formats: OpenFlight, TerraPage, OBJ, 3DS, JPEG, PNG and GeoTIFF.

http://en.wikipedia.org/wiki/OpenSceneGraph

This is examples of the eventual output:
http://www.openscenegraph.org/projects/osg/wiki/Screenshots

Anyway, all of the graphics image databases have to be prepared with this in mind.

OpenGL Performer, formerly known as IRIS Performer and commonly referred to simply as Performer, is a commercial library of utility code built on top of OpenGL for the purpose of enabling hard real-time visual simulation applications. OpenGL Performer was developed by SGI, who continues to maintain and enhance it. OpenGL Performer is available for IRIX, Linux, and several versions of Microsoft Windows.


OpenSceneGraph is an open source high performance 3D graphics toolkit, used by application developers in fields such as visual simulation, computer games, virtual reality, scientific visualization and modelling.

The toolkit is written in standard C++ using OpenGL, and runs on a variety of operating systems including Microsoft Windows, Mac OS X, Linux, IRIX, Solaris and FreeBSD.


DirectX is an attempt to move this application stack away from Performer and other open (and semi-open) standards to Windows/DirectX so that people would require a Windows platform to do this type of work. None of this alternate platform stuff allowed!

To this day, Microsoft have been unsuccesful.

Edited 2010-01-10 11:45 UTC

Reply Score: 2

RE[7]: Standards?
by boldingd on Mon 11th Jan 2010 17:27 UTC in reply to "RE[6]: Standards?"
boldingd Member since:
2009-02-19

I still don't really understand how that has anything to do with the topic at hand. The rendering is done in software so it has nothing to do with OpenGL. The only part where OpenGL has anything to do with anything in that process is when people create the content to be rendered, and we don't know if the workstations used to create the content itself was running Windows or Linux, or something else.


While I know nothing of the kinds of software or set-up studious would use for CG rendering, I am extremely dubious of the claim that they'd be doing their rendering in software (as opposed to hardware accelerating it). Your render task will go a lot quicker if you use hardware acceleration, and with modern, programmable GPUs, I don't think there's anything you couldn't do on a GPU that you could do in software (that you'd want to do during a render). And if you could pump out even just two frames using a GPU per one frame rendered in software -- and I'm betting you could do a lot better than that -- I don't know why you wouldn't use the GPU.

Reply Score: 2

RE[3]: Standards?
by KAMiKAZOW on Sun 10th Jan 2010 21:37 UTC in reply to "RE[2]: Standards?"
KAMiKAZOW Member since:
2005-07-06

Do you know that Maya, 3D Studio SolidWorks, CATIA and similar packages also have DirectX backend and are mainly used in Windows? Isn't that serious graphics rendering?


That has nothing to with DirectX being superior. MS does not ship GPU vendors' OpenGL drivers at all. To get accelerated OpenGL you have to download the drivers yourself from the vendor's web site.
Back in the day that was no problem, because all drivers were obtained that way, but ever since MS offers drivers via Windows Update, Autodesk et al. basically have no choice but to provide DirectX support as well. If they didn't, other companies may had introduced DirectX support -- giving them the edge in competition, because their software requires lower maintenance.

I think that's also the main reason why game developers went from OpenGL to DirectX. Less burden for their Windows customers is probably more profitable than a few additional Mac and Linux players.

Reply Score: 2

RE[4]: Standards?
by tylerdurden on Sun 10th Jan 2010 22:16 UTC in reply to "RE[3]: Standards?"
tylerdurden Member since:
2009-03-17

Well, that and the fact that DirectX is a complete multimedia API, which was designed with games in mind from the get go. That made development using DirectX a no brainer really, at least as far as windows is concerned.

You also forget, that a lot of games come with their own directX redistribution packages in case the customer did not get it directly from MS. They could have done the same if they were using OpenGL. The fact is that OpenGL hasn't offered a clear value proposition for game developers in windows for a very long time.

Reply Score: 1

RE[5]: Standards?
by KAMiKAZOW on Mon 11th Jan 2010 03:00 UTC in reply to "RE[4]: Standards?"
KAMiKAZOW Member since:
2005-07-06

Well, that and the fact that DirectX is a complete multimedia API, which was designed with games in mind from the get go. That made development using DirectX a no brainer really, at least as far as windows is concerned.


And after MS dropped hardware-accelerated DirectSound support, OpenAL was quickly adopted by many games.

You also forget, that a lot of games come with their own directX redistribution packages in case the customer did not get it directly from MS. They could have done the same if they were using OpenGL.


No, they couldn't. Doing the same for OpenGL means shipping entire driver packages for all GPU vendors, because the drivers contain the actual OpenGL implementations.
Have you seen the sizes of Windows GPU driver packages?
NVidia alone:
- One set of drivers for so-called legacy GPUs.
- One set of drivers for current desktop CPUs.
- One set of drivers especially for notebooks.
Each of those available for Vista/Win7 and WinXP as separate package. Each package is over 110MB in size and I didn't even look at ATI's, Intel's, S3's, etc. drivers, but let's say for the sake of argument, that round about 1GB is required to achieve the same thing for OpenGL. That space is more likely to be used by game data.

Of course, that all is no technical argument against OpenGL. It's an inconvenience caused by Microsoft's refusal to ship OpenGL-compatible drivers via the same channels it ships Direct3D-compatible drivers.

Before MS sabotaged OpenGL by refusing distribution, all the most popular licensable game engines offered OpenGL at least optionally:
Unreal Engine had OpenGL support out of the box, together with Direct3D.
Half-Life 1 had OpenGL support out of the box, together with Direct3D.
Quake 3 engine ran with OpenGL exclusively.

At least for me and a friend OpenGL mode ran smoother (IIRC he had a Voodoo 3 card and I had some NVidia TNT).

Reply Score: 2

RE[6]: Standards?
by moondevil on Mon 11th Jan 2010 10:38 UTC in reply to "RE[5]: Standards?"
moondevil Member since:
2005-07-08

What Microsoft refusal?!

It is true that they are a company that plays very bad with everyone, even with their own partners (IBM and Sybase just to name two of them), but they are not the only ones to blame.

The number one culprints are the graphic cards vendors.

There are many more vendors than ATI and NVidia, but only these two try to provide some quality level drivers.
Intel's OpenGL support is a joke, even more buggy than ATI, but they win in the number of deployed cards on the PC market.

Lets not forget that even though ATI and NVidia are supporting OpenGL, most of their tools do not. And in many graphics programming conferences the research work they present is mainly DirectX based.

So, yes Microsoft might be a very bad corporation but they are not the only ones to blame.

Plus if you look at the computer industry, from C compilers, UNIX flavors, Databases and so on, every vendor is making their little work to prevent users to easily switch to another vendor.

Microsoft just happens to be the most successful company playing this type of game.

Reply Score: 1

Oh! Yet...
by makc on Sat 9th Jan 2010 18:32 UTC
makc
Member since:
2006-01-11

another DirectX vs OpenGL thread!

cfr. http://equinox.planet-d.net/dxgl.jpg

Reply Score: 2

RE: Oh! Yet...
by tylerdurden on Sat 9th Jan 2010 18:54 UTC in reply to "Oh! Yet..."
tylerdurden Member since:
2009-03-17

So DirectX is equivalent to an old has been rockstar riddled with drugs?

Reply Score: 1

Some people said it
by deathshadow on Wed 13th Jan 2010 11:22 UTC
deathshadow
Member since:
2005-07-12

I'll say it again - the advantage of directX is it's the full package. Audio, networking, input devices, window setup, 2d and 3d. OpenGL is a 3d renderer and that's that. Working in OpenGL you are stuck choosing a whole slew of other packages that may or may not work as you want even if you are only targeting winblows, much less linsux and OSHex.

Even so, I prefer OpenGL for 3d because I found it easier to understand, though it seems with OpenGL 3 they are determined to flush it's simple elegance right out the window. Only recently with OpenGL running atop SDL have we even begun to have something approaching DirectX in scope - and even then you are pretty much left scrambling for a decent networking API... but at least with SDL sitting under OpenGL you can set up your window or fullscreen handle, have a working sound interface, enumerate and handle device inputs - and do so in a manner piss simple compared to handling openGL's gruntwork manually - and certainly simpler than the 40 lines or so you end up with just trying to open a window and grab hold of the gamepad, mouse and keyboard you do in DirectX.

Though SDL's audio capabilities are only good for simple games, you usually end up wanting to use OpenAL too. In that way tt shouldn't be "use openGL instead of directX" it's "use OpenGL, SDL and OpenAL" - though you are still stuck searching for a GOOD cross platform networking library as capable as what directplay used to provide or .net does now.

Reply Score: 2