helix-3d-toolkit - 如何将 Viewport3DX 渲染为 DX11 纹理?
问题描述
我有一个 3D 引擎,我希望能够将基于 Helix 的内容嵌入其中(例如在墙上绘画)。我知道它可以RenderTargetBitmap
用来渲染任何 WPF 元素,但这会引入太多的间接级别(特别是考虑到 WPF 运行 DX9),并且除了首先将其复制到 CPU 内存之外,没有官方方法可以访问图像。
理想情况下,我想为 Viewport3DX 提供我自己的目标颜色和深度缓冲区。
解决方案
您可以从
Viewport3DX.RenderHost.RenderBuffer.BackBuffer.Resource as global::SharpDX.Direct3D11.Texture2D
您可以连接Viewport3DX.RenderHost.Rendered
事件并将缓冲区数据复制到您自己的纹理上。
推荐阅读
- php - 基于两个条件对多维数组进行排序
- java - 在elasticsearch中查询字段中的子字符串
- batch-file - 批处理:仅在父文件夹包含“word”时运行
- javascript - 我无法将我正在分叉的 Chrome 扩展中的元素居中
- python - Django中的会话是如何初始化的?
- c++ - C++ 编译未知大小的静态数组?
- asp.net - ASP.NET:保存更改不起作用
- javascript - 在登录用户的数据表中显示数据
- android - 我如何检查(监听器)在android中默认情况下火炬是打开还是关闭?我知道打开或关闭手电筒很热,但有听众吗?
- php - 带有 SPLObject 的 cURL -“curl_setopt():提供的参数不是有效的文件句柄资源”