Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Will the Lack of DX10 on XP Spur OpenGL Dev?

Posted by Cliff on Thu Mar 22, 2007 12:45 PM
from the microsoft-likely-to-release-dx10-on-XP-first dept.
Sparr0 asks: "Microsoft has announcement that DirectX 10 will not be released for Windows XP (which means no Shader Model 4.0 and no Geometry Shaders). I have since been waiting for news of game developers switching to OpenGL, in order to get the best graphics on the best hardware on the most popular gaming OS, however there is nary a whisper of such. Will such a shift occur, even if only in small amounts? When? Why not? It is probably safe to say that Unreal Tournament 3 (AKA UT2007) will have OpenGL as an option in Windows, but that is both unsurprising and also a long way off. Ditto for Quake Wars, and most other games that are planning a native Linux clients. Where are all of the other big names with Windows-only offerings? Why haven't we heard from Valve, Blizzard, Sony, or EA, to name a few?"
+ -
story

Related Stories

[+] Games: Vista Not Playing Nice With FPS Games 437 comments
PetManimal writes "Computerworld is reporting that gamers who have installed Vista are reporting problems with first person-shooter titles such as CounterStrike, Half-Life 2, Doom 3. and F.E.A.R. (Users have compiled lists of games with Vista issues.) The complaints, which have turned up on gamers' forums, cite crashes and low frame rates. Not surprisingly, the problems relate to graphics hardware and software: 'Experts blame still-flaky software drivers, Vista's complexity, and a dearth of new video cards optimized for Vista's new rendering technology, DirectX 10. That's despite promises from Microsoft that Vista is backwards-compatible with XP's graphic engine, DirectX 9, and that it will support existing games. Meanwhile, games written to take advantage of DirectX 10 have been slow to emerge. And one Nvidia executive predicts that gamers may not routinely see games optimized for DirectX 10 until mid-2008.'"
[+] Games: Valve To Support DX10 With Episode 2 96 comments
In an interview with Game Informer from last week, representatives from Valve confirmed that they'll be supporting DirectX 10 functionality in the release of Half-Life 2: Episode 2 and Team Fortress 2. This will be the case even for those folks who haven't upgraded to Vista yet. No worries if you don't have a DX10 card, though. They've got functionality nailed all the way back to DirectX 8, and are trying to push it all the way back to 7.
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • You must be new here :)
  • by ArcherB (796902) * on Thursday March 22 2007, @12:54PM (#18446465) Journal
    In a word, NO.

    Unfortunately, most game developers will probably continue writing for DX9.0c until the majority of users are running Vista and have DX10 capable video cards.

    The exceptions, as listed in the summary, will be those developers that intend for their games to be cross-platform and run on Linux and OSX as well as Visa.

    • Game developers have never been shy about demanding the latest and greatest hardware to run their games on. I don't seem them coding to DX9 for much longer.
      • Re: (Score:3, Informative)

        That's a silly comment. It's not a matter of being shy about it. When barely anyone can run your product, nobody will buy it. Once there is a large enough mass of Vista users then you'll see games start to ditch DX 9 codepaths.

        Sheesh, a lot of titles shipping today still have DX 8 codepaths and look pretty damn good on DX 8 hardware.

        Pass me that pipe you're smoking :)
  • XP might be the most popular gaming OS at the moment, but the video cards in most computers with XP are likely going to be upgraded simultaneously with everything else (including the OS -- to Vista). The video cards most folks have in their machines aren't so hardcore that DX10 is very critical. By far most of them don't support it anyway.

    Though I may have misunderstood the question...
    • Most gamers I know have hardware that will run Vista/Aero and have had that hardware for about year and half. Many cards true are still stuck on DX9 but I would say that's more a software/driver issue then card issue. Most gamers are simply not moving to Vista because many of their games either don't work on Vista or they work but they have issues. Vista security features are really screwing with many games. Gamers will switch to Vista when all these issues are worked out.

  • DX9 (Score:3, Interesting)

    by bung-foo (634132) on Thursday March 22 2007, @12:58PM (#18446555)
    DX9 should be enough for anybody . . .

    Seriously, I doubt that companies like Valve will switch to OpenGL for winxp releases. They already have extensive directx know-how and will probably just build in DX9 and DX10 support just like they currently build in support for DX7, 8 and 9.

    In the end, most people will upgrade to vista. Either because they want to or because they need it for a certain program to run or simply because it came pre-installed on their shiny new Dell. It is inevitable.
  • Nope. (Score:5, Insightful)

    by rblancarte (213492) on Thursday March 22 2007, @12:59PM (#18446563) Homepage
    I think that a lot of what is going to happen out there is going to be like John Carmack said [gameinformer.com]. I think that overall, you are going to see developers stick with DirectX 9 for the time being. I think this is especially true for Windows only games.

    The fact is that if you are developing Windows games, why would you support two APIs when you could support a single one and D9 users would just have to deal with not having the latest bells and whistles? And this doesn't even take into account that D3d is now a more advanced API than OpenGL (which has been mentioned already).

    RonB
    • Re:Nope. (Score:5, Informative)

      by ad0gg (594412) on Thursday March 22 2007, @01:24PM (#18447047)
      DX9.0L also called DX9EX is going to support the new Shader 4.0, aero transparency and other dx10 features. It just doesn't have WDDM which isn't a direct3d feature.

      DirectX info [wikipedia.org]
      WDDM [wikipedia.org]

      • Re: (Score:3, Interesting)

        The Wii does not use OpenGL. It uses a proprietary graphics API that resembles OpenGL.

        I have experience porting our companiy's graphics engine (the OpenGL part of it) to the Wii, and it's not trivial.

  • It is my hope that maybe, just maybe, this could spur developers to, instead of focusing on making a visually cutting-edge game using the latest and greatest hardware and APIs, start to focus on trying to make the most fun and innovative possible game using the "previous gen technology", if you will. Not to say that both can't be achieved, but I would say that invariably games tend to focus on one in favor of the other.
  • well (Score:4, Insightful)

    by mastershake_phd (1050150) on Thursday March 22 2007, @01:00PM (#18446589) Homepage
    If game developers started moving towards OpenGL Microsoft might release DX10 for XP. They will do anything to prevent something else from gaining a foothold.
  • Where are all of the other big names with Windows-only offerings? Why haven't we heard from Valve, Blizzard, Sony, or EA

    Sorry, but only one is windows only. Last I checked, World of Warcraft, Warcraft 3, and Diablo II run on Mac. And in the case of WC3, the CD has a Mac and windows version on the same CD. Amazon.com tells me that EA's #1 game (The Sims 2) also runs on the Mac. Can anyone tell me a Windows game Sony makes? The only windows software I can think of is SoundForge and their CD DRM, but the latter I don't think I want to work cross-platform;) That leaves Valve, which is run bun a former MS hotshot, so I think that might have something to do with the company's founder preferring Direct3D.

    I think many developers are already using OpenGL, but of course, that's only one part of being cross platform. Network, sound, and input also need to be implemented cross-platform....
    • Can anyone tell me a Windows game Sony makes?


      Ok, I'll take this one.

      http://www.station.sony.com/ [sony.com]

      Check the "PC Games" column. Not a single non-Windows compatible game there. They are all Sony products.
      (Yeah yeah, Sony didn't originally make many of them, but they own and develop them now, so they are Sony's.)

    • Re: (Score:3, Interesting)

      Actually, to be fair, the Sims for Mac is done by Aspyr. A 3rd party company who helps Windows only games work on Mac.

      However, since EA writes games for Nintendo, Sony, and Microsoft consoles, I suspect they are familiar with both OpenGL and Direct X.
      • Blizzard is the only major game company I know of that supports both Mac and PC in-house. Aspyr uses their own in-house implementation of the Windows API on OS X to port 3rd party games.
    • Check under PC games at Sony Online Entertainment [sony.com].
    • Not just that...but the aforementioned Blizzard games *do* support OpenGL. On Windows they use Direct3D by default, but you can change that behavior with the -opengl command line switch when starting the game. This is why they were so easily portable to MacOSX and why they run so well on Wine.
  • Most Games DEVs have already mentioned in various places that they intend to handle the situation at least for now with two render paths, one optomized and used for DX10 and one for DX9.

    Remember that Vista doesn't automatically confer DX10 either you need a card that supports DX10 and those are VERY new still the installed base is still mostly DX9 cards reguardless of OS. There are still some users running on DX8 cards as well, which are still well supported in many even new games. The Source engine is ev
  • Some developers do parallel development in DX9 and OpenGL anyway. Perhaps for increased portability options such as the desire to have an OSX port. You mention Blizzard yet they have already done this. Take Warcraft III for example, the default rendering is of course dx9 but adding the -opengl switch to the command line toggles it over. The game mostly looks the same, although I have to say the fonts look a lot uglier / jagged for some reason. My guess is dx9 must have some sort of font smoothing optio
  • DX10 is going to be just like DX9 and DX8 before it. In reality we are mostly concerned with the Direct3D portion of DirectX since the rest is more stagnant. When DX9 libraries and later hardware came out developers simlpy turned on the options now supported or speed up the game. The game would interogate the card to see what features and how well they were supported and went on from there. The same will happen with DX10.

    As for OpenGL getting a bump out of this, I doubt developers will suddenly add an O
    • Actualy, DX10 is not like that btw. There's no compatibility "bits" or whatsnot. With DX10, its an all or nothing: a card cannot claim DX10 compatibility if it doesn't support the entire spec. Sure, different cards can be slower on certain features than other, but thats it, which is quite very different from previous implementation.
  • ...but is Microsoft going to have a 360 update in which 360 games can use some of the features that are in DX10?

    It seems silly to me Microsoft would come up with something they think will be such a big improvement for games, and yet not try to get the same tech on the 360...or am I just showing my ignorance here...
  • DirectX 9L (available for both XP and Vista, Aero runs on 9L, not 10) has more better support for the latest graphics hardware and more features than OpenGL.
    The Xbox360 platform shares API details with both Windows and DirectX.

    Unless you're seeking cross-platform compatibility and don't the latest and greatest feature, sure go for OpenGL.

    In other words, Vista doesn't run well on my current hardware, XP does. Will this make me switch to Ubuntu or something? No, it won't.
    • DirectX has a LOT more functionality than OpenGL.

      Now mayhap the OP is writing about Direct3D... in that case, even DirectX 9.x's version of Direct3d features a LOT more functionality than OpenGL's most recent revision contains.


      Anyone else able to confirm this? I'm no developer so I'm fairly ignorant on the matter. However, when someone that goes by MSFanBoi2 says that MS's proprietary product is better than an open standard, I take it with a grain of salt.

      • Re: (Score:3, Informative)

        http://en.wikipedia.org/wiki/OpenGL_vs._Direct3D [wikipedia.org]

        http://www.gamedev.net/reference/articles/article1 775.asp [gamedev.net]

        http://www.xmission.com/~legalize/d3d-vs-opengl.ht ml [xmission.com] (this one is a bit out of date and only covers OpenGL 1.2 and DirectX 8
        • Ok..

          So you give one Wikipedia link, and two out of date links regardiunbg 2 generation old versions of OpenGL and DX.

          Since Wikipedia is basically worthless as an authoritative source we have to throw that one out right off. The others are completely out of date, and the gamedev link even talks about Windows 95 and DOS games!

          C-mon. If you want to back up your argument, at least use up-to-date information and non-wikipedia links.

          Note that I'm not saying you are wrong. You may very well be correct that DX i
          • by Curien (267780) on Thursday March 22 2007, @01:31PM (#18447219)
            None of the parent comments said DX was better than OpenGL. They said it was /broader/. OpenGL is a 3D programming framework. DirectX is a collection of frameworks: DirectDraw for 2D, Direct3D for 3D, DirectInput for user input, DirectPlay for networking, etc.

            Comparing OpenGL and DirectX is like comparing Abiword (just a word processor) and OpenOffice (a word processor, a spreadsheet, a vector graphics editor, a presentation designer, etc).

            Comparing OpenGL to Direct3D is an apples-to-apples comparison. That's usually what people mean when they talk about comparing DX and GL (since it's the only comparison that makes sense). But that's intellectual laziness.
        • From your gamedev.net link:

          Performance is no longer an issue! The speed for both APIs has come out exactly even for well written programs. The performance can only be gauged per machine, and that by testing. There is no way to predict which will run faster.

          However, as another poster pointed out, these links are pretty dated and do not include the latest OpenGL or DX10. From what I gathered from your links and my own quick and inadequate research is this:

          DirectX10 is much easier to write for due to the mana

      • by Cornflake917 (515940) on Thursday March 22 2007, @01:27PM (#18447129) Homepage
        Actually, there's really not that much difference in fucntionality. Direct3d does allow you to get a little bit intimate with the machine these days, but it's much more complicated to program in. It takes many more lines of code to get an app initialized using Direct3d than it does openGL. You're right to question "MSFanBoi", he gives you links but he doesn't even mention that even Wikipedia is questioning the neutrality of the topic. OpenGL vs. Direct3d debates have been pretty heated lately. Direct3d has gotten alot better then when it first came out, but OpenGl still has some advantages.

        I've had experience using both API's and I can tell you that OpenGL is much easier to work with. But I can understand why companies would want to use Direct3d if they need to create a really effeicent graphics engine.
        • Re: (Score:3, Interesting)

          Most of the hobbyists I talk to tend to agree that, if you want to just put some triangles on screen, OpenGL is easier. If you want to do a complex graphic engine with lots of optimization, then Direct3d is easier.

          It also depends on what kind of programming paradigm you're used to. Direct3d is OO. OpenGL is not.
      • by GreggBz (777373) on Thursday March 22 2007, @01:32PM (#18447253) Homepage
        Having done a little of both, I can say the grandparent is correct. Maybe not the way he raves but I would choose DirectX.

        A major advantage of DirectX is programmable pixel and vertex shaders. The syntax has cleaned up considerably in the past two or three versions so it's now as easy or easier than OpenGL. Also, if you know DirectX it's nice because then you can use DirectInput and DirectSound which have a similar structure and use the COM model. As an API, it's pretty nice to develop in. Once you get it, I can see not wanting to migrate to OpenGL.

        OpenGL is nice because it's portable and it's an open standard. It's also a little leaner then DirectX. With the newer extensions you have most of the functions that DirectX has, but are missing some key ones. It's also a little more obtuse and it's not updated very much anymore.

        Both are stable if written right. Both are fast if written right.

        This all being said, they are both very complex API's with lots of extensions (OpenGL) and updates (DirectX) so the differences are there and I've just touched on them. Overall the functionality is close but they just differ in the way they do things.

        Games are moving to DirectX for a reason in my eyes. It is somewhat better.
        • Re: (Score:3, Informative)

          A major advantage of DirectX is programmable pixel and vertex shaders. The syntax has cleaned up considerably in the past two or three versions so it's now as easy or easier than OpenGL.

          Both APIs allow you to use a high level language to write programmable vertex and fragment shaders (HLSL for Direct3D, GLSL for OpenGL).
      • by Jthon (595383) on Thursday March 22 2007, @01:54PM (#18447711)
        The answer is sort of. Ultimately they each have similar capabilities, but for the more advanced features it's just easier to do in DX10. OpenGL takes longer than Direct3d to get any set of features pushed into the base spec, so it tends to lag Direct3D revisions.

        One "good" part of OpenGL is that graphics companies don't need to wait for approval to include new features. They can release access to cutting edge features using vendor specific extensions. This was really important in the early days of consumer 3d graphics, and helped spur game development.

        Of course this makes programming hard as the extensions are different between vendors and may even vary between different cards in a family (usually they try to just add on). This requires developers to create completely unique rendering paths for each card they want to support to get the best speed/features. Over time though Microsoft's Direct3D caught up with OpenGL and sort of sucked up all the good extensions into their API.

        Direct3D 10's advantage is that it puts out a spec and requires all cards fully implement it. Unlike previous versions of DX you can't be DX 10 compatible and leave out features. This really helps eliminate the need for separate rendering paths to make any specific feature work, and so makes development much easier.

        So the short of it is they can both do the same stuff, it's just more difficult at the moment with OpenGL.

        (Another interesting thing to note is that I have heard rumors that once Direct3d came out Microsoft, who also happens to sit on the OpenGL ARB, slowed down the adoption of some features into the main OpenGL spec. This left them ramping Direct3D at a faster rate.)
      • by QX-Mat (460729) on Thursday March 22 2007, @02:41PM (#18448449)
        From a game development point of view, there are distinct differences between OGL and DX.

        DX is more than just a graphics library - its a framework for engine development.
        OGL is only a graphics library - and it only lets you use the hardware you have (DX has quite a few handy emulation layers).

        Unfortunately, OGL doesn't have the kind of supplemental stuff you'd really expect when prototyping or developing a game from scratch - i'm taking about as native format mesh loaders and converters (everything found in d3dx). Interestingly (and frustratingly), many of the d3dx routines aren't perfect and have their odd quirks. Some are plain not reliable, and most rarely return more than a null hDC when things do go wrong (this doesnt help debugging a mesh LOD reduction!)

        OGL does support integer and float based indexing, whereas, afaik, DX only supports float.

        Both support a wide range of colour formats - as expected.

        Personally, the OGL viewports are easier to manipulate.

        I find the continual loss of device in DX (through 'apparently' random context switching) annoying. You have to have a fairly large and complex recovery structure/path to commit states back to the gfx hardware.

        I would say that OGL is consistent in its API naming, but as-is DX.

        OGL is consistent in its interaction with GLSL (the pixel and vertex shader lanauge). I would also say DX is consistent with vertex and pixel shader manipulation too - except considering nVidia's quirky interaction between the sheets after compile (there's some kind of intermediate language and translation going on here, DX tends to break more than OGL - not something i've experienced myself tho).

        If I was to code a game now, I would be happier using DX with D3DX, STL, and maybe some boost stuff rather than OGL, because I would have to code less of the engine - less loading/common manipulation routines - thanks to greater library support in DX... ... BUT if a company i worked for was to code a game, and had enough cash to create an OGL-specific framework, I would use OpenGL. Why? It's quite simple - once you've created the framework to a renderer/game, the code-readability/RAD/speed of OGL and DX are evenly matched... yet OGL is portable.

          Hths,
        Matt
        • Re: (Score:3, Informative)

          OGL is only a graphics library - and it only lets you use the hardware you have (DX has quite a few handy emulation layers).

          I stopped reading there, as this is completely backwards.
    • by d3ac0n (715594) on Thursday March 22 2007, @12:57PM (#18446541)
      Reeeeeaaallly?

      Hmmm... Forgive me if I am just a TAD skeptical about claims of DX's superiority from someone named MSFanBoi2.

      Of course, you could be just engaging in a little humorous sock-puppetry and I'm not getting it.

      Either way, I was under the distinct impression that OpenGL was and has been MUCH more advanced than Direct X for many years, and DX-10 doesn't really up the ante much.
      • I work for a major game studio. Direct X games are far easier and cheaper to develop... it's just not a big question for us in the industry. The only benefit to OpenGL at this point for us is for multi-platform graphics. The mac and linux markets for games are... not considerable vs. the ease of development for DX-based games.

        It's more capable. That's all there is to it. We wouldn't screw with it if it wasn't.

        I'm not a programmer so don't ask me for implementation specifics in this- I am in production.

        Vista
        • Console ports (Score:4, Informative)

          The only benefit to OpenGL at this point for us is for multi-platform graphics. The mac and linux markets for games are... not considerable
          Microsoft Windows, Mac OS X, and */Linux are not the only gaming platforms. If your game studio is actually major, then someone might want to consider set-top or handheld platforms. The graphics APIs of DS, PSP, Wii, and PLAYSTATION 3 closely resemble OpenGL.
      • No way. OpenGL and Direct3d are both capable of the same sort of effects. OpenGL is in no way "MUCH more advanced" than Direct3d. Thats just wishful thinking.
      • They're more or less the same - although features usually arrive in Direct3D first, then they are introduced later into OpenGL as custom extensions. These are documented in SGI's registry [sgi.com].

        Usually each extension will appear as a vendor specific extension GL_NV_xxxx, GL_ATI_xxxx, then become introduced as a standard extension GL_ARB_xxxx.
        • Ok, so based on these (esp the Wiki), there really is no major reason to go with one or the other at this point. Soooo essentially companies will just continue with whatever they had?
    • I will second this since 2 people have questioned MSFanBoi's possible motives. Dx9 is better than OGL. The drivers are better, easier to program, easier to access advanced features.
    • How many times does it need to be said... SDL [libsdl.org] and similar open-source cross-platform libraries cover the rest of Direct X that OpenGL does not already cover.
    • Now mayhap the OP is writing about Direct3D... in that case, even DirectX 9.x's version of Direct3d features a LOT more functionality than OpenGL's most recent revision contains.

      *sigh* - don't feed the trolls...

      There's pretty much feature parity between Direct3D in DirectX 10 and Open GL. Advanced shaders, advanced extensions - they are all in there. Now you may be looking at an OpenGL driver from a manufacturer who doesn't keep up to the spec, but the NVidia OpenGL implementation can access every part of the hardware that Direct3D does.

      Now, DirectX covers keyboard handling, spatial sound management and other stuff beyond the actual display. Other platforms tend to use other

    • Re: (Score:3, Insightful)

      even DirectX 9.x's version of Direct3d features a LOT more functionality than OpenGL's most recent revision contains.
      EXCEPT GEOMETRY SHADERS, which was the entire point of the OP.
    • Vista supports OpenGL the same way XP, 2000, etc support it: the MSOGL wrapper.
      • Re:No solution (Score:4, Informative)

        by Rycross (836649) on Thursday March 22 2007, @01:11PM (#18446799)
        More to the point, if you're gaming or doing 3d work, then you're installing the video card manufacturer's driver. Which means you're going to be getting fully accelerated OpenGL, sans wrappers. Yes, even on Vista. The wrappers are just a simple default replacement, in case you don't have proper GL drivers.
        • OpenAL (Score:5, Interesting)

          by Gr8Apes (679165) on Thursday March 22 2007, @01:22PM (#18447009)
          And apparently Vista will spur OpenAL adoption, as that's the only way to get around Vista's brain-dead DRM'd audio architecture and get hardware acceleration under Vista. That's straight from Creative's website detailing Vista's new audio architecture's effects and recommendations, btw. (Whatever you may think about Creative, you can't argue with their analysis on this one.)