混合渲染目标

时间:2017-11-06 09:44:44

标签: c# directx sharpdx

我有两个渲染目标,我想要将它们组合(混合),最简单的是alpha值,也可以使用gx通过directx将其合并到一张图片中。一个目标是背景,另一个是我想要绘制的数据。

我无法在后台绘制数据,因为我不想在新的绘制之间存储数据。这适用于其他用例。但现在不再了。因此,我将数据附加到一个目标,最好有效地混合这两个目标。

我在文档中有点迷失,并且无法找到相关的示例。我使用sharpdx

感谢任何帮助,谢谢

2 个答案:

答案 0 :(得分:0)

您可以轻松地在着色器中组合渲染。只需使用资源绑定创建两个rendertargets并将场景渲染给它们,之后将shaderresourceviews传递给着色器并将它们与您选择的方法(乘法,添加等)组合。所有这些通常用于"延迟遮光"

另一个看到此方法的来源,你可以在这里找到:RobyDX - SharpDX Samples

答案 1 :(得分:0)

如果2个目标是独立的,并且您想要将其中一个目标渲染到另一个目标中。我建议你做一些类似于我的事情。

这就是,首先渲染目标(在第一次传递时)一个纹理资源和样本。当你渲染到第二个时,从第一个开始渲染。我在目前的项目中已经完成了将2或3个来源混合在一起。