首页 > 解决方案 > 如何将 Viewport3DX 渲染为 DX11 纹理?

问题描述

我有一个 3D 引擎,我希望能够将基于 Helix 的内容嵌入其中(例如在墙上绘画)。我知道它可以RenderTargetBitmap用来渲染任何 WPF 元素,但这会引入太多的间接级别(特别是考虑到 WPF 运行 DX9),并且除了首先将其复制到 CPU 内存之外,没有官方方法可以访问图像。

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

标签: helix-3d-toolkit

解决方案


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

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


推荐阅读