如何将我的 Viewport3DX 渲染成 DX11 纹理?

How can I render my Viewport3DX into a DX11 texture?

我有一个 3D 引擎,我希望能够将基于 Helix 的内容嵌入其中(比如在墙上画画)。 我知道可以使用 RenderTargetBitmap 来呈现任何 WPF 元素,但这会引入太多间接级别(特别是考虑到 WPF 运行 DX9),并且除了将图像复制到 CPU记忆优先

理想情况下,我想为 Viewport3DX 提供我自己的目标颜色和深度缓冲区。

您可以从 Viewport3DX.RenderHost.RenderBuffer.BackBuffer.Resource as global::SharpDX.Direct3D11.Texture2D

您可以连接 Viewport3DX.RenderHost.Rendered 事件并将缓冲区数据复制到您自己的纹理中。