New To The Forum? Click Here To Read The How To Guide. -- Developers Click Here.

DirectX 9 (DX9) Will be Deprecated Starting with Next SDK

cyberealitycybereality Posts: 25,667 Oculus Staff
edited February 2015 in General
Due to API and resource limitations, we’ve decided to deprecate DirectX 9 support and will be removing it from LibOVR in the near future. This will allow us to focus on future work using DirectX 11 and OpenGL that will help deliver a great VR experience on Windows.

Apps that use DirectX 9 will continue to work for the foreseeable future, but they won’t compile in future SDK releases and may have additional runtime latency after we remove DirectX 9 support.
AMD Ryzen 7 1800X | MSI X370 Titanium | G.Skill 16GB DDR4 3200 | EVGA SuperNOVA 1000 | Corsair Hydro H110i
Gigabyte RX Vega 64 x2 | Samsung 960 Evo M.2 500GB | Seagate FireCuda SSHD 2TB | Phanteks ENTHOO EVOLV
«1

Comments

  • bigmike20vtbigmike20vt Posts: 3,272 Valuable Player
    edited January 2015
    Hmmmmm so I think this means eurotruck sumulator and the american truck simulator, as well as stuff like HL2 and Live For Speed are stuffed long term.

    Never mind, a real shame but I guess dx9 is ancient
    Fiat Coupe, gone. 350Z gone. Dirty nappies, no sleep & practical transport incoming. Thank goodness for VR :)
  • pittsburghjoepittsburghjoe Posts: 514
    Art3mis
    Sure, drop 9 ..but how about 12? Windows 10 is coming.
    i7 skylake, EVGA Classified, 2 EVGA 980 sc's, Thermaltake TR2 RX(1000W), 32GB DDR4, Win 10 on an SSD
  • kojackkojack Posts: 4,442 Volunteer Moderator
    Client rendering extended mode should still work in dx9, all the sdk would be used for is initial values and tracking, it would be api agnostic. As annoying as extended mode is, it would at least let old games keep working (it's not a completely simple task to port a dx9 engine to dx11, they have a lot of differences).

    It doesn't bother me too much, since Ogre 2.0 is dropping DX9 too and I've never gotten Ogre's DX9 to work with direct rift mode.
  • SvenVikingSvenViking Posts: 296
    Art3mis
    edited January 2015
    I guess that includes HL2 and all other Source engine games, probably Live for Speed, etc.

    When you say they may have increased latency, do you mean keeping an older runtime installed would keep them running with lower latency? If so: is the current support being removed rather than only deprecated to reduce bloat, or for other reasons? Thanks.

    (Edit: Removed from the runtime rather than left in as legacy support, I mean. I understand why you'd want to remove it from the SDK.)
    Scorched Battalion - VR Jam edition available for Gear VR and DK2 (Win/Mac/Linux)
    Jungle Juice
    Sven Co-op
  • mscoder610mscoder610 Posts: 117
    Hiro Protagonist
    It'll be pretty disappointing if Half Life 2 and the other SteamVR Source Engine games no longer work in future SDK versions. I can understand that getting Direct Mode to work well with DX9, but as mentioned I'd think Extended Mode would still work fine for those cases.
  • saviorntsaviornt Posts: 1,951
    NerveGear
    Sure, drop 9 ..but how about 12? Windows 10 is coming.

    This. DX12 will help tremendously with software latency; from the reports. MS didn't decide I was a good enough person to preview the new DX, so, I can't say for certain.
    Current WIPs using Unreal Engine 4:
    Agrona - Tales of an Era: Medieval Fantasy MORPG
  • Wise move.

    Cant wait to see the SDK using DX12
  • You guys are fucking retarded.

    I was planning to purchase a CV1 and recommend it to people if it was any good, but when the game that's most interesting for it won't work because of arbitrary (not technical) decisions, I can't put any money towards a product making such poor decisions.

    I'd rather support someone who is willing to make their product as accessible as possible within technical reasoning, not arbitrary upper management reasoning.
  • kegetyskegetys Posts: 14
    NerveGear
    Ouch, that is a lot of development time gone down the trash, extremely bad decision at this point in time in my opinion. I think it is going to be really hard to convince developers to invest money into developing Oculus support with this kind of moves, where literally months of work will be suddenly for nothing because out of the blue comes a decision like this.

    You guys really seem to have lost it when it comes to developer relations.
    As a cyborg you will serve shodan well.
  • It's such a bad decision. I can understand that the Oculus Rift was meant to be a cool and revolutionary product, and it actually is, but if at the start of the project you say DirectX 9, at the mid of the project you release two development kits with DX9 support, receiving really good opinions about it, making developers from different games work to offer the best Oculus Rift support in their games (I'm talking specially about LFS), and then you say no DirectX 9.0 support without even offering a solution, doesn't talk that good about this team. You aren't dumb persons, so I know you thought about the developers work and all the time that should be wasted with this decision. Upgrading from DirectX 9 to DirectX 11 isn't an easy job, considering older computers won't support it. However, if you expected games will upgrade from 9 to 11 because of this, I guess you thought wrong, sadly. That doesn't do good for the product popularity. It's such a dissapointing thing to be honest.
  • lmaceleightonlmaceleighton Posts: 293
    Hiro Protagonist
    I was told this was going to happen by several people, and looks like they were right on. It is NOT a bad move,it is a good move on Oculus's side. DX9 isn't just old, it's over the hill and its been replaced with newer code, that is more efficient, which is only good for VR int he long run. They need code that is going to be worked on and updated.

    ~B :ugeek:
  • owenwpowenwp Posts: 659
    Art3mis
    It's a complication, but the bandaid had to come off sooner or later. Better now than after a lot of commercial games have been released. The limitations of DX9 are hard to work around, especially when you need performance (or you know, antialiasing for render targets). And bending over backwards to support the porting of older games that were not designed for VR in the first place isn't worth it, not to mention older hardware that would be very unlikely to hit 90hz with just about any game.
    Sanzaru - Programmer
  • kojackkojack Posts: 4,442 Volunteer Moderator
    kegetys wrote:
    Ouch, that is a lot of development time gone down the trash, extremely bad decision at this point in time in my opinion.
    A worse decision than targeting your development entirely to an api from 12 years ago that is about to be replaced for the 3rd time?

    Direct rift mode DX9 has never worked 100%, there are parts that return incorrect values. So this isn't surprising.
  • CyrilCyril Posts: 1,206
    3Jane
    gu3st12 wrote:
    I was planning to purchase a CV1 and recommend it to people if it was any good, but when the game that's most interesting for it won't work
    DirectX 9 is over 10 years old : What's the point of supporting old hardware that can't run the CV1 anyway.

    As for the most interesting software to play when CV1 becomes available : It isn't out yet.

    The real shame is that Microsoft won't put DirectX 12 on Windows 7 (of course...), so Oculus VR can't go straight for DirectX 12 as it otherwise could have. Bad news for Microsoft, good news for Sony who is aiming for a VR headset instead of an OS update.

    And truth is this wasn't a poll :)
  • saviorntsaviornt Posts: 1,951
    NerveGear
    Well, Microsoft isn't releasing DX12 for Windows 7 or Windows 8, since, well.. Windows 10 is a "free upgrade for a year".. whatever that means.

    Edit: And developers / game studios that are still creating their content using DX9.. :roll: I have an issue at a number of job sites that are still using Windows XP. Whoever decided this move, Windows XP doesn't support the new hardware that they are rolling out when the machine goes down. Pure.. freaking.. genius.
    Current WIPs using Unreal Engine 4:
    Agrona - Tales of an Era: Medieval Fantasy MORPG
  • DarrenMDarrenM Posts: 236
    Hiro Protagonist
    Not all games that have been getting rift support are new. I'm not surprised that devs who have worked on adding support to older engined games, like kegetys with RBR, would feel burnt by this move.

    It's going to be a big mess when some games support the new version but others can't.

    Hopefully someone can make a runtime switcher if it ends up being necessary to swap back for the dx9 games. iRacing (dx11 support in progress), Live for Speed, Richard Burns Rally, Euro Truck Sim et al. It also cuts off hope of CV1 support for those games :(
  • Cyril wrote:
    gu3st12 wrote:
    I was planning to purchase a CV1 and recommend it to people if it was any good, but when the game that's most interesting for it won't work
    DirectX 9 is over 10 years old : What's the point of supporting old hardware that can't run the CV1 anyway.

    As for the most interesting software to play when CV1 becomes available : It isn't out yet.

    The real shame is that Microsoft won't put DirectX 12 on Windows 7 (of course...), so Oculus VR can't go straight for DirectX 12 as it otherwise could have. Bad news for Microsoft, good news for Sony who is aiming for a VR headset instead of an OS update.

    And truth is this wasn't a poll :)

    Right, because my GTX 970 doesn't support DX9 anymore...

    Oh wait, it does so I'd be able to use a CV1 (theoretically) perfectly fine. New hardware has fine backwards compatibility back to DX9. It's not like I would try to use a CV1 on a fucking 3dfx card.

    They're just shooting themselves in the foot. Alienating developers and consumers alike. Developers will lose trust, as their updates to DX10/11 might be killed overnight one day with a similar announcement. Instability is the death of a hardware and software platform, and this is obvious instability.
  • ThoemseThoemse Posts: 172
    Art3mis
    Why would anyone making a new game start building it with DX9?
    That's not reasonable at all. It will make it hard to add VR support to old titles but it should be a non issue for new VR-focused titles.
  • genetransfergenetransfer Posts: 605
    Hiro Protagonist
    Thank you so much for letting us know, I was about to continue to use my dx9 engine but now I will use my dx11 engine instead. Saved me from making vapor ware.
  • virrorvirror Posts: 402
    Brain Burst
    Yeah, why would ppl create a game thats based on dx9 this day? Just seems strange since only a very few % still have cards that only use dx9 and the benefits from dx11 are huge compared. I think its a good move. A bit sad for some of the cool games out there but thats the way things go.
  • ScawenScawen Posts: 589
    Trinity
    OK, why did I have to pretend to read a stupid legal document just so I could log in? As if anyone would read that crap. Oculus should fire their lawyers. :evil:

    Why would anyone create a game based on DX9? There is one good reason. If you would like your software to run on Mac or Linux. That is possible, using Wine, for a game written for DX9. But Wine does not support later versions of DirectX, so if you use DX10 or later, your software can ONLY run on Windows (later than XP).

    I think Live for Speed is not affected by this change. Using Extended mode, LFS is fully responsible for the output and doesn't share DirectX objects with the Rift drivers. I guess this change is very bad for any developers or users of software that use Direct mode and DX9.
    Live for Speed - www.lfs.net
  • agnuagnu Posts: 72
    what about opengl? Is there no info on specific opengl version support? Half life 2 does have an opengl renderer on the linux and mac. Valve could port hl2 to opengl on windows and integrate the latest sdk.
    My 3D android game: Attack of the Teapotcopters
    Google Cardboard mode RELEASED! Screenshot
  • bigmike20vtbigmike20vt Posts: 3,272 Valuable Player
    agnu wrote:
    what about opengl? Is there no info on specific opengl version support? Half life 2 does have an opengl renderer on the linux and mac. Valve could port hl2 to opengl on windows and integrate the latest sdk.

    This is a good point. I think ETS2 can be run in openGL as well.
    Fiat Coupe, gone. 350Z gone. Dirty nappies, no sleep & practical transport incoming. Thank goodness for VR :)
  • EisernSchildEisernSchild Posts: 198
    Art3mis
    Did not get it at all... You say you remove the D3D9 DistortionRenderer class from LibOVR ? If i use DX9 in my engine i still can include the old rendering code in my own project, right ? So that does not change anything, right ?
  • kojackkojack Posts: 4,442 Volunteer Moderator
    Did not get it at all... You say you remove the D3D9 DistortionRenderer class from LibOVR ? If i use DX9 in my engine i still can include the old rendering code in my own project, right ? So that does not change anything, right ?
    They will probably remove DX9 from direct rift mode. You don't have the code for that, it's part of the closed source driver.
    Supporting DX9 just for rendering is easy, I bet it's entirely due to problems with direct mode that are making them drop it.
    DarrenM wrote:
    Hopefully someone can make a runtime switcher if it ends up being necessary to swap back for the dx9 games. iRacing (dx11 support in progress), Live for Speed, Richard Burns Rally, Euro Truck Sim et al. It also cuts off hope of CV1 support for those games
    I just tested, Euro Truck works fine in OpenGL with the DK2.

    Modern OpenGL and DX11 are both a lot more powerful than DX9. Geometry shaders, domain shaders, hull shaders, compute shaders, none of those are dx9.
    Scawen wrote:
    Why would anyone create a game based on DX9? There is one good reason. If you would like your software to run on Mac or Linux. That is possible, using Wine, for a game written for DX9. But Wine does not support later versions of DirectX, so if you use DX10 or later, your software can ONLY run on Windows (later than XP).
    Wine supports DX10. https://www.winehq.org/winapi_stats
    If they really cared about linux and mac users they would use opengl instead of dx9, so they can easily just build native versions.
  • agnuagnu Posts: 72
    Do we know if they are experimenting with dx12? it is due to be released around/before the CV1 (2015 fall).
    Most of todays GPUs (intel haswell, broadwell and up, AMD GCN gpus and up, nvidia dx11 capable gpus) will have support for it, and because of Microsoft's offer (free windows 10 for every win7/win8 user) DX12 will spread very fast.

    Unreal engine 4 and unity are already integrating support.
    My 3D android game: Attack of the Teapotcopters
    Google Cardboard mode RELEASED! Screenshot
  • swtswt Posts: 1
    NerveGear
    PLEASE reverse this poor decision (to deprecate DX9) immediately! Removal of DX9 will render the Oculus Rift useless for a significant class of applications (including professional applications that simply cannot be easily ported to DX11/12). Oculus should have more than sufficient resources to recompile for DX9 (especially after the significant Facebook investment). If you cannot adequately support Direct Mode using DX9 then simply state that Direct Mode is not fully supported when using DX9 (and DO NOT remove the option for extended mode ... including in CV1+ ... ever). Removal of DX9 support would cause serious financial harm to our company. Perhaps you can just hire a summer intern to support/recompile for DX9. Please reconsider. Thank you. Have a good day.
  • pixel67pixel67 Posts: 196
    So they are dropping support for a 12 year old API (http://en.wikipedia.org/wiki/DirectX) that:

    1. Has been replaced twice and coming up on a 3rd time with clearly superior technology as already stated
    2. Was initially part of an OS which itself is EOL.
    3. Was never intended to render VR

    All i can say is good riddance. If it makes the end product more stable and responsive then all we have lost is support for a few titles who were solely relying on outdated technology...

    Good decision in my book.
  • pixel67 wrote:
    So they are dropping support for a 12 year old API (http://en.wikipedia.org/wiki/DirectX) that:

    1. Has been replaced twice and coming up on a 3rd time with clearly superior technology as already stated
    2. Was initially part of an OS which itself is EOL.
    3. Was never intended to render VR

    All i can say is good riddance. If it makes the end product more stable and responsive then all we have lost is support for a few titles who were solely relying on outdated technology...

    Good decision in my book.

    You say all these things, but you're forgetting some things.

    DX9 was revised with Vista to support Vista/7/8's features for the Window Manager. This is called DX9Ex.

    Aero relies on DX9Ex, as it's a reliable target that nearly every single Windows computer will be able to meet.

    If Microsoft deems DX9 to be a reliable "baseline" for functionality, how is Oculus unable to match this? Especially when it's an arbitrary decision unbased in technical reasoning.
  • bigmike20vtbigmike20vt Posts: 3,272 Valuable Player
    edited January 2015
    kojack wrote:
    I just tested, Euro Truck works fine in OpenGL with the DK2.

    Modern OpenGL and DX11 are both a lot more powerful than DX9. Geometry shaders, domain shaders, hull shaders, compute shaders, none of those are dx9.


    Hi

    I just fired up ETS2 and all I can say is, unless ETS2 is patched I hope that extended mode does continue to work in CV1. on my machine at least (Sandy !5 and GTX980) it runs horribly in OpenGL and has a graphical glitch on the right side of the screen as well.
    Fiat Coupe, gone. 350Z gone. Dirty nappies, no sleep & practical transport incoming. Thank goodness for VR :)
«1
Sign In or Register to comment.