使用WPF获取DirectX视图/窗口

Getting a DirectX view/window using WPF?

本文关键字:窗口 视图 DirectX WPF 获取 使用      更新时间:2023-10-16

我想要一个包含DirectX 11渲染图像的盒子(最好是其中一个WPF面板的内容)。我环顾四周,发现一个一年的MS博客简短地提到DirectX11是可能的,它链接到一个已经失效的GitHub项目,另一个MS博客说它很容易做到,但没有提到它是DX的哪个版本(我打赌它是9)。它似乎(至少对我来说)并没有真正的解决方案让DX11作为WPF应用程序的一部分工作。

你有什么资源可以帮助我吗

或者我应该使用Qt,因为程序的整个后端无论如何都是C++

我在Qt中工作没有问题,因为我无论如何都必须学习WPF或Qt的大部分内容,但我更喜欢在WPF中工作,因为我不需要任何跨平台功能,而且(乍一看)WPF有更好的文档。

我已经看了这个,这个和这些都与将DirectX 11视图引入WPF应用程序有关。我发现这些问题中的信息并没有真正指向好的指南,也没有为我想做的事情提供有用的建议

称为SlimDX的解决方案可能有用:https://slimdx.org/

一些优点:它是WPF的宽范围API包装器,支持D3D9、D3D10、D3D11、XAudio2等。它还原生地支持.NET 4.0和x64目标。我的一个旧的WPF项目(虽然是C#,而不是C++)使用SlimDX,我的经验是积极的。

缺点:最新版本是2012年1月,所以它不再处于积极开发中。

唯一可能的警告:我不确定它将如何使用C++(如果有的话)。