Live data from Hacker News

Why you should use OpenGL and not DirectX

blog.wolfire.com

111–120 of 187 posts

Re: Why you should use OpenGL and not DirectX

#111
post #100
post #18

Earlier quoted context omitted.

> Isn't this more or less a problem of the past? Yes and no. If you want to be writing a typical 3d game like an FPS, and RTS or 3rd person platformer, you can and probably should use an off the shelf 3d engine and stay away from the lower level APIs, OpenGL and d3d. However, if you want to do something more exotic, say processing your webcam input stream with your GPU, or write a space scale render of the solar syst…

Actually, RTS games are also a hard problem for engines because they require a lockstep shared-state for multiplayer. This means you need a very high level control of the language your game-logic is built in to make sure your floating-point calculations are identical across all devices and everything is perfectly deterministic. This is a problem for "complete-platform" cross-platform engines like Unity.

Lockstep simulation isn't required--though it was a popular solution.

Re: Why you should use OpenGL and not DirectX

#112

Earlier quoted context omitted.

A Microsoft OS still runs on over 90% of the desktop market.

I wonder what the percentage is when you figure the entire "computer" gaming market (eg. consoles, tablets, and phones). I suspect Microsoft's dominance on gaming is (and will become even more) weaker than we believe. OpenGL seems like a no-brainer for future survival as MSFT platform dominance exhibits entropy.

Is PS3/PS4 development OGL or a proprietary API? Because if it is OGL then yes that makes said API far more useful for sheer amount of access to hardware.

Re: Why you should use OpenGL and not DirectX

#113
post #65
post #35

Earlier quoted context omitted.

At the time this was accurate, that generation all supported OpenGL in some form...

No it wasn't. Only someone without console development experience can issue such a statement.

right... so PSGL wasn't a thing? I never saw the OpenGL for 360 or touched it, but I was told I was mistaken by a few guys when I mentioned that it didn't exist - it wasn't there at launch but MS added it later (third hand quote)...

ps. google me, i have considerable experience. that doesn't stop me from being wrong or making a mistake, but don't make such brash assumptions.

Re: Why you should use OpenGL and not DirectX

#115
post #65

Earlier quoted context omitted.

No it wasn't. Only someone without console development experience can issue such a statement.

right... so PSGL wasn't a thing? I never saw the OpenGL for 360 or touched it, but I was told I was mistaken by a few guys when I mentioned that it didn't exist - it wasn't there at launch but MS added it later (third hand quote)... ps. google me, i have considerable experience. that doesn't stop me from being wrong or making a mistake, but don't make such brash assumptions.

Were any games written using PSGL?

Re: Why you should use OpenGL and not DirectX

#116

Earlier quoted context omitted.

right... so PSGL wasn't a thing? I never saw the OpenGL for 360 or touched it, but I was told I was mistaken by a few guys when I mentioned that it didn't exist - it wasn't there at launch but MS added it later (third hand quote)... ps. google me, i have considerable experience. that doesn't stop me from being wrong or making a mistake, but don't make such brash assumptions.

Were any games written using PSGL?

i wouldn't know. i do remember that psglInit did not 'just work' as expected when I experimented with starting a PS3 engine from scratch - I was going to use it as a time saver, but ditched it quick and just did a proper interface to the GCM/RSX functions.

Re: Why you should use OpenGL and not DirectX

#117

Earlier quoted context omitted.

I wonder what the percentage is when you figure the entire "computer" gaming market (eg. consoles, tablets, and phones). I suspect Microsoft's dominance on gaming is (and will become even more) weaker than we believe. OpenGL seems like a no-brainer for future survival as MSFT platform dominance exhibits entropy.

Is PS3/PS4 development OGL or a proprietary API? Because if it is OGL then yes that makes said API far more useful for sheer amount of access to hardware.

The PS4 uses OpenGL (4.4?).

The PS3 used a proprietary API based on OpenGL 1.0.

Re: Why you should use OpenGL and not DirectX

#118
post #86
post #69

Earlier quoted context omitted.

Game consoles - proprietary 3D APIs OpenGL != OpenGL ES != WebGL, yes they are all based on the same concepts, but require separate code paths and different shader versions.

> Game consoles - proprietary 3D APIs Back in the day that was true, but I don't think that's the case these days. Xbox is obviously DirectX. Wii was OpenGL, and I think Sony used OpenGL as well.

Keep in mind that DirectX and OpenGL are first and foremost abstraction layer on top of the GPU. Consoles have a fixed hardware, so you can skip a large part of these and write code directly for the GPU.

I don't know how much still holds for the XBox One, but for instance the XBox 360 version of DirectX is very different from the PC version: it's much closer to the metal and exposes pretty much all the GPU functionalities.

Here is a thread talking about XBox 360 dev: http://beyond3d.com/showthread.php?t=62049

Re: Why you should use OpenGL and not DirectX

#119

Earlier quoted context omitted.

Not really 'legacy' per se either... good luck running OpenGL on Microsoft's consoles or as a ModernUI application! DirectX being a broader and, in my opinion, better designed API certainly doesn't hurt it's adoption either.

Yeah, don't worry about those mobile devices. We've got plenty of directx support for those too. What are they again? Surface? Windows phone? I think I know one guy who has one.

This isn't to say you won't possibly need more than just DirectX. But this is to say you quite possibly need at least DirectX.

Re: Why you should use OpenGL and not DirectX

#120
post #60

Earlier quoted context omitted.

Not really 'legacy' per se either... good luck running OpenGL on Microsoft's consoles or as a ModernUI application! DirectX being a broader and, in my opinion, better designed API certainly doesn't hurt it's adoption either.

What about OSX? Does DirectX work (at all/well) on it? Linux? How feasible is it to program with DirectX on any non-MS platform? Edit: I guess the point I'm making is, OpenGL runs on non-MS as well as MS platforms (perfectly/badly is another question), but DirectX is locked to Microsoft only. That is what makes it of little to no value for people like me who need to care about cross-platform products and support.

> as well as MS platforms (perfectly/badly is another question)

Not all of them unless you count using an OpenGL-to-DirectX wrapper library. "Cross platform" sometimes means writing all the platform specific code yourself.

Post reply on HN