• Why Do Game Devs Choose DirectX over OpenGL?
    84 replies, posted
[QUOTE=hexpunK;24984545][B]Firstly you really are dense. Proprietary standards as in the DirectX API, not GPUs. Windows is the only thing allowed to run it. [/B] Tessellation is making textures look realistic by adding depth, but unlike normal maps or parallax mapping, it actually creates polygons where the depth needs to be instead of emulating depth. If I remember it correctly that is.[/QUOTE] Well, good thing I am running microsoft windows then. And for the second part. well sounds great, but wouldn't it ruin performance if it would add lots of polygons?
[QUOTE=Fatfatfatty;24984579]Well, good thing I am running microsoft windows then. And for the second part. well sounds great, but wouldn't it ruin performance if it would add lots of polygons?[/QUOTE] The whole point of devs moving to OpenGL is so that other people who don't use Windows can play games. Stop being so ignorant to other users. And no, if you are running hardware that is DX10/ 11/ Open GL (forgot which version) compatible, the performance drop isn't too bad. Unless you are using an exceptionally low end GPU.
Doesnt the Playstation 3 use OpenGL? and just look at what that can do. So..... am I right in thinking that the PS3 can tessilate, while the clunky Xbox360 on DX10 can't?
[QUOTE=Fatfatfatty;24984363]But all GPU's supports both DirectX and OpenGL. Also, loads of OpenGL bandwaggoning in this thread. tesselation is what in laymens terms?[/QUOTE] Sure, on Windows, either system is fine. However, try writing a DirectX program for the Mac. Or the PS3. Or the Wii. Or Linux. Can't do it. Tesselation is essentially making more-detailed models from less-detailed ones at runtime. So if you, say, zoom in on someone's face, you won't see the sharp edges of the polygons, but smooth curves. It's been done for over a decade on the CPU, but only for prerendering, and a few games. Doing it on the GPU allows it to run at very high speed, allowing it to do more complex interpolations. [editline]04:35PM[/editline] [QUOTE=chrishind10;24984665]Doesnt the Playstation 3 use OpenGL? and just look at what that can do. So..... am I right in thinking that the PS3 can tessilate, while the clunky Xbox360 on DX10 can't?[/QUOTE] DX10 doesn't have the function calls for it. That's the main benefit from DX11. There's really no reason why "DirectX 10" cards can't run "DirectX 11", though. I highly suspect nVidia and ATI could release drivers for their DX10 cards to let them run DX11, but won't do it in order to sell more. I can't prove it, but it makes a lot of sense.
Thats what I thought, the GPU is just a processor, and DirectX is just a piece of software to be ran on it, surely it could in theory do it.
Well, maybe people with bad specs will be able to use the program? I'm not sure if it effects preformance though.
yeah with a modded card BIOS you can do it. unfortunately only the highest end dx10 cards are worth doing it to.
Well, there is a reason for some upgrades. DirectX 9 was a pretty major change, enough that DX7 and earlier definitely couldn't run it, and most DX8 cards wouldn't work. DirectX 7 was also major, what with hardware transform-clip-lighting. Really, though, I think a DirectX 9 card could run DirectX 11 stuff, just very slowly. Although I'm not 100% sure about that, mainly because I don't pay much attention to DirectX programming.
Linux, Mac, Android, IPhone/IPodTouch,Playstation 3 and the PSP(Emulated form) run OpenGL. And many other devices.
[QUOTE=Canary;24985175]Linux, Mac, Android, IPhone/IPodTouch,Playstation 3 and the PSP(Emulated form) run OpenGL. And many other devices.[/QUOTE] pretty much anything that runs on anything other than a microsoft product
Android & iOS uses OpenGL ES though, which is a lighter version of OGL.
Herd mentality. That and Microsoft loves creating their own standards which they then proceed to force upon their development community.
[QUOTE=pikzen;24985379]Android & iOS uses OpenGL ES though, which is a lighter version of OGL.[/QUOTE] So does the PS3. IIRC, though, the only real differences between OpenGL and OpenGL ES relate to backwards-compatibility and managing multiple programs using the GPU, which are non-issues on consoles. Coincidentally, I just checked, and the XBox 360 uses a modified form of DirectX 9, not DirectX 10 like someone earlier claimed.
[QUOTE=pikzen;24985379]Android & iOS uses OpenGL ES though, which is a lighter version of OGL.[/QUOTE] It's still OpenGL as you know it but adapted for the ARM architecture.
[QUOTE=Canary;24985572]It's still OpenGL as you know it but adapted for the ARM architecture.[/QUOTE] No. OpenGL ES simply drops some very old function calls that are only kept in the main OpenGL to avoid breaking very old applications. It isn't adapted for any particular architecture.
[QUOTE=pikzen;24985379]Android & iOS uses OpenGL ES though, which is a lighter version of OGL.[/QUOTE] Believe it or not, OpenGL ES 2.0 is pretty much a full-featured copy of OpenGL 3.0, complete with support for vertex and fragment shaders. I'm sure there are differences, but I've written both and I can't name anything major that's missing from GL ES. It's actually pretty ridiculous that my phone has better graphics processing capabilities than two of my desktops.
Because many PC games are Xbox ports and guess what the development standards for that is? As for those that aren't, they're just going with the flow.
[QUOTE=gman003-main;24985669]No. OpenGL ES simply drops some very old function calls that are only kept in the main OpenGL to avoid breaking very old applications. It isn't adapted for any particular architecture.[/QUOTE] That's Ok then.
[QUOTE=gman003-main;24985548] Coincidentally, I just checked, and the XBox 360 uses a modified form of DirectX 9, not DirectX 10 like someone earlier claimed.[/QUOTE] Which would make sense, since the 360 came out way back in '05, whereas DX10 wasn't released until late '06.
[QUOTE=C0linSSX;24985483]That and Microsoft loves creating their own standards which they then proceed to force upon their development community.[/QUOTE] Honestly I think the best thing MS could do with DX is to turn in into an open, ubiqutous game runtime that could unify everything, a DX game would work on anything from Windows to PS3 to a phone.
[QUOTE=BmB;24998063]Honestly I think the best thing MS could do with DX is to turn in into an open, ubiqutous game runtime that could unify everything, a DX game would work on anything from Windows to PS3 to a phone.[/QUOTE] Yeah, like that will ever happen.
Alas.
[QUOTE=BmB;24998063]Honestly I think the best thing MS could do with DX is to turn in into an open, ubiqutous game runtime that could unify everything, a DX game would work on anything from Windows to PS3 to a phone.[/QUOTE] Not enough rainbows in the world for this.
[QUOTE=BmB;24998063]Honestly I think the best thing MS could do with DX is to turn in into an open, ubiqutous game runtime that could unify everything, a DX game would work on anything from Windows to PS3 to a phone.[/QUOTE] DX is far from cross compatible. This is not possible
[QUOTE=chrishind10;24984665]Doesnt the Playstation 3 use OpenGL? and just look at what that can do. So..... am I right in thinking that the PS3 can tessilate, while the clunky Xbox360 on DX10 can't?[/QUOTE] X360 has DX9 not DX10, but IIRC it's not totally same one used in Windows. It may be bit modified. [url]http://en.wikipedia.org/wiki/Xenos_%28graphics_chip%29[/url] [quote]Support for a superset of DirectX 9.0c API DirectX Xbox 360, and Shader Model 3.0+[/quote]
Hey guys, isn't it possible to write some type of abstraction, so DirectX, and OpenGL can be used? Like, you can choose.
[QUOTE=amcwatters;25001158]Hey guys, isn't it possible to write some type of abstraction, so DirectX, and OpenGL can be used? Like, you can choose.[/QUOTE] Yes, and there are engines that do exactly that. OGRE and Irrlicht are two of the bigger examples.
Doesn't GoldSRC also support both? Or do I just have a worthless memory...
[QUOTE=imadaman;25001704]Doesn't GoldSRC also support both? Or do I just have a worthless memory...[/QUOTE] that and software acceleration.
its becua opengl sux lol fatytfattyfat toled me so I would assume it's because DirectX is seen more as "the norm", and devs would feel more comfortable using it. Lots of people have huge amounts of mistrust toward open-source things for no apparent reason, so that may contribute to it. [editline]08:22PM[/editline] [QUOTE=C0linSSX;24985483]Herd mentality.[/QUOTE] Pretty much this.
Sorry, you need to Log In to post a reply to this thread.