I'm developing on a mac where I can't use DirectX. I've never used OpenGL before, and was curious on how close it is to DirectX performance wise.
I know most games ship nowadays with the option to play with openGL or DirectX 3D hardware accel, so I guess they would have to be pretty damn close.
Anyone have any advice for me? I'm thinking about an SDL openGL combo.
Actually, most Windows games nowadays don't offer the choice between OpenGL and Direct3D. They just (almost) all use Direct3D.
However, I'd expect performance to be pretty much the same, unless your app is batch limited or something weird like that. As long as it's GPU limited, some slight CPU-side performance change due to different driver architectures isn't going to be noticeable.
I know XBOX especially uses D3D on each and every game, but I thought more titles had the option to switch between the two API's? I might be wrong, and since I've been out of the loop for a good 5 months I'll give you the benefit of the doubt. Hell, I haven't played a game in over a year.
I'll tell you one thing: I miss Visual Studio. I'm seriously debating dual booting windows. I think it's my only option.
I thought more titles had the option to switch between the two API's?
I haven't seen a game that gave you the choice since Half-Life 1, ten years ago. Not that I've played every game out there, but that's the sense I have. There's just no reason today to put all the work into developing, debugging, and testing both an OGL and a D3D renderer.
I'm seriously debating dual booting windows.
At least with the Intel Macs dual booting Windows is relatively painless. :yes:
I know XBOX especially uses D3D on each and every game
Xbox D3D != Windows D3D.
Yes, for the most part you can pretty much compile PC D3D code for the Xbox (360), but as soon as you're delving into Xbox 360 optimizations (which is the case for every serious game) your code becomes unportable.
There's just no reason today to put all the work into developing, debugging, and testing both an OGL and a D3D renderer.
Unless of course you are doing cross platform. The moment you want to target X-Box 360, PS3 and PC you are going to need to start getting DX and GL working alongside each other (Even if its not GL you use on the PS3).
True, or if you want to support Mac OS X or Linux.