How can we improve Windows Developer?

Native DirectX 11 support for WPF

in 2013 WPF still work on DX9, and this have a lot of inconvenience. First of all it is almost impossible to make interaction with native DX11 C++ and WPF. Axisting D3DImage class support only DX 9, but not higher and for now it is a lot of pain to attach DX 11 engine to WPF.

Please, make nativa support for DX 11 in WOF by default and update D3DImage class to have possibility to work with nativa C++ DX 11 engine and make render directly to WPF control (controls) without pain with C++ dll.

1,842 votes
Sign in
Check!
(thinking…)
Reset
or sign in with
  • facebook
  • google
    Password icon
    Signed in as (Sign out)

    We’ll send you updates on this idea

    Denis shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →
    under review  ·  Visual Studio Team responded  · 

    Thank you for using Visual Studio and for your commitment to improving it. We are currently evaluating whether we will be able to include this into the product.

    34 comments

    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)
      Submitting...
      • Jim2668 commented  ·   ·  Flag as inappropriate

        It's insane that I have to include DirectX 9.0c in my installer because Windows 7 is installed with a later version of DirectX, in order to support D3DImage. Am I missing something?

      • Anonymous commented  ·   ·  Flag as inappropriate

        While we are holding our breath, Microsoft need to deliver a new version of DirectX 9 SDK, as the June 2010 version (at least DxErr.lib) is not compatible with Visual Studio 2015

      • John commented  ·   ·  Flag as inappropriate

        Wpf should use direct2d technology natively. This is essential for any meaningful imaging processing application when we need high performance.

      • Grigory Perepechko commented  ·   ·  Flag as inappropriate

        Answering to TS:
        Integrating DX11 to WPF is not that hard.
        Render via DX11 to shared texture, then create DX9 texture from shared handle. Show DX9 texture via D3dImage. Repeat 60 times a sec :)

      • Eriawan Kusumawardhono commented  ·   ·  Flag as inappropriate

        This issue I gave 1 vote because fundamentally I agree with the original issue poster (Denis). But I prefer smoother migration to DX10 first, and then DX 11 in the future.
        The adoption of DX10 will be easier to implement than adoption of DX11 into WPF, as the migration from technological standpoint of DX9 to DX10 itself is easier than DX9 to DX11.
        Furthermore, DX11 capable/supported hardwares (display adapters) are not that many in current market, as far as I know (on January 2015).

      • Eric Hill commented  ·   ·  Flag as inappropriate

        This request needs to include SwapChainPanel for desktop applications like the Store apps folks have.

      • Theodore Zographos commented  ·   ·  Flag as inappropriate

        I agree with Jams's comment (on December 8, 2014).

        Microsoft doesn't currently have an actively maintained framework for building fully fledged Desktop applications (such as LOB apps), other than the limited WinRT that runs on 8 an above.

        Even if we could somehow convince our clients to upgrade to Windows 8 (which they won't for the time being), WinRT is just not good enough!

        So either make "fat" WinRT apps be able to run on Windows 7 and support a larger subset of .NET (PREFERRED), or keep actively supporting WPF as it is.

        As far as the first is concerned, I understand there are Store issues and policies in place that make support of Windows 7 difficult, if not impossible. (mandatory Windows 7 service pack maybe?)

        As for the latter, I would say that DirectX 11 support would not be on my top-list. I would put .NET Native WPF desktop apps support first, and the rewriting of the entire WPF rendering engine as second.

        P.S. On an entirely different note: What is happening with the Reactive Extensions, and is there a plan to integrate them into XAML markup?

        I apologize if I was out of subject, but it feels like this is the only place where developers' voices can be heard.

      • jams commented  ·   ·  Flag as inappropriate

        Either provide a FullFat/Desktop capable WinRT which has parity with the Full .NET framework, and which allows controlled escape from the sandbox, or provide an updated WPF.

        Support DirectX 11/12, can be compiled via Native .NET, based on .NET Core, modularized, and all the other goodies,

      • Joshua A. Schaeffer commented  ·   ·  Flag as inappropriate

        There is no desktop alternative, Microsoft boxed themselves in a corner with that pointless .NET vs native struggle. Now they're gonna pay the dues and fix WPF or they're going to lose more developers, there isn't going to be a negotiation.

      • Denis commented  ·   ·  Flag as inappropriate

        As time is going, I think that now it will be better to make C# wrappers over DirectX C++ libs as it done in SharpDX and give developers possibility to use immediate mode rendering (some sort of SwapchainPanel from WinRT)
        I think it would be better.
        Also, in WinRT there is Win2D (managed wrapper over C++ Direct2D), so I think Win3D also will come soon because it is strange to have managed D2D, but don`t have managed D3D.
        It would be greate to make the same for WPF (actually it already done by SharpDX, but it has bad compiance with WPF).
        So, you just need to do managed wrappers for DirectX and provide normal interop for WPF.
        Would you do it?

      • Anonymous commented  ·   ·  Flag as inappropriate

        Cant stress this one enough. WPF + D3D9 has fundamental rendering stutters with WPF animation in frame interlocked playback. Supporting DX 11 is of little use if this issues persists. Switching to Metro not an option since we will be supporting Windows 7 for many many years.

        Please address.

        Now that MS has an engineer in charge - cmon - shine a light on the loyal and let's have this one for Christmas!

      ← Previous 1

      Feedback and Knowledge Base