DirectX 11是否支持.NET?

时间:2011-11-29 04:55:43

标签: c# directx multimedia directx-11

我可以使用C#app中的DirectX 11吗?

需要从WPF应用程序使用DirectSound。 .NET 4 W7 x64

5 个答案:

答案 0 :(得分:10)

您可能还想考虑较新的SharpDX。与SlimDX最大的不同之处在于它不支持DX9(虽然这与此无关),并且API直接从DX SDK标头生成。你甚至可以开始在Windows 8中制作Metro风格的应用程序,因为它已经准备好支持Direct3D 11.1。

答案 1 :(得分:9)

来自Chuck Walbourn的博客标题:Games for Windows and the DirectX SDK。 他似乎推荐了SlimDx库,根据他们的documentation它确实支持DirectSound

来自上述博客:

  

DirectX SDK的现代版本专为C / C ++本机而设计   开发人员。如果您正在寻找使用DirectX的.NET解决方案   技术,虽然有多种选择可供选择   解决方案取决于您的具体需求:

     

...

     

•对于使用Windows Presentation Foundation但想要的开发人员   要使用新的DirectX 11 API,Windows API代码包提供   Direct3D 10.1,Direct3D 11,Direct2D的托管程序集,   DirectWrite,DXGI和Windows Imaging Library(WIC)以及   许多其他Windows 7功能。最新版本支持.NET 4.0,   和x64本机“anycpu”应用程序。请注意,您仍然需要安装   DirectX SDK获取HLSL编译器(FXC.EXE)工具。

     

•对于   投资Managed DirectX 1.1但正在寻找的开发人员   更新以解决我在上面提到的限制,开源   SlimDX库旨在模仿Managed DirectX 1.1   目的。它包括对x64原生“anycpu”应用程序的支持,   包括现代DirectX支持,并与.NET 4.0兼容   运行。

     

...

答案 2 :(得分:4)

如果您想将DirectX 11与C#一起使用,则需要一个包装器 请看以下链接 http://slimdx.org/

答案 3 :(得分:1)

这是我找到的一种方式。首先,您需要安装DXSDK(我有2010年6月和SDK for Windows 7)。转到“添加引用”对话框,按“浏览”,转到"C:\Windows\Microsoft.NET\DirectX for Managed Code\1.0.2902.0""C:\Windows\Microsoft.NET\Managed DirectX\v9.02.2904",然后选择正确的dll。例如 - Microsoft.DirectX.dll。然后将"using Microsoft.DirectX"指令添加到项目中。

答案 4 :(得分:0)

Bop,如果你只打算播放声音,那么FMOD是另一种选择,有一个C#包装器可用于此。如果您计划的不仅仅是这个,那么我想在上面推荐Sharpdx,因为它仍然受到支持。