5

我想让 Directx 11 在 WPF 中工作。从这个问题的答案可以看出这是可能的。第二个答案指向一些实现“共享表面队列”的微软代码。

我正在浏览共享表面队列代码,但我不知道它实现了什么目的(除了需要使不同版本的 Directx 很好地共享一个表面)。创建共享表面队列以共享 directx 表面的目的是什么?(特别是 WPF 与 directx 11 的组合)。

注意:与我引用的问题不同,我没有使用 slimDX

4

1 回答 1

5

原因与不同 Direct3D 接口之间以及 WPF 组合和多线程之间的同步问题有关。这里有一些有用的链接...

Direct3D9Ex 和 DXGI 共享表面队列
http://archive.msdn.microsoft.com/D3D9ExDXGISharedSurf

Windows 图形 API 之间的表面共享 http://msdn.microsoft.com/en-us/library/ee913554%28VS.85%29.aspx

WPF D3D 互操作 C++ 和 C# 示例。MS Kinect SDK 对 SDK 示例使用共享表面队列方法 http://msdn.microsoft.com/en-us/library/jj591490.aspx

在开发 slimdx 时遇到的不同步问题的一些讨论 http://www.gamedev.net/topic/606138-slimdx-issues-with-keyedmutex-and-wpf/

于 2013-02-18T01:50:17.587 回答