C# 混合渲染目标

C# 混合渲染目标,c#,directx,sharpdx,C#,Directx,Sharpdx,我有两个绘制到的渲染目标,我想通过directx使用gpu将它们组合(混合)到一张图片上,可能最容易通过alpha值。一个目标是背景,另一个是我想要绘制的数据 我不能只在背景上绘制数据,因为我不想在新绘制之间存储数据。这在其他用例中效果很好。但现在不是了。因此,我将数据附加到一个目标上,只要有效地混合这两个目标就好了 我对文档有点迷茫,找不到相关的示例。我用的是夏普DX 感谢您的帮助,您可以轻松组合到着色器中的渲染目标。只需使用资源绑定创建两个RenderTarget并将场景渲染到它们,然后将S

我有两个绘制到的渲染目标,我想通过directx使用gpu将它们组合(混合)到一张图片上,可能最容易通过alpha值。一个目标是背景,另一个是我想要绘制的数据

我不能只在背景上绘制数据,因为我不想在新绘制之间存储数据。这在其他用例中效果很好。但现在不是了。因此,我将数据附加到一个目标上,只要有效地混合这两个目标就好了

我对文档有点迷茫,找不到相关的示例。我用的是夏普DX


感谢您的帮助,您可以轻松组合到着色器中的渲染目标。只需使用资源绑定创建两个RenderTarget并将场景渲染到它们,然后将ShaderResourceView传递给着色器,并将它们与您选择的方法(乘法、加法等)组合。所有这些通常用于“延迟着色”


要查看此方法的另一个来源,您可以在此处找到:

您可以轻松组合到着色器中的渲染目标。只需使用资源绑定创建两个RenderTarget并将场景渲染到它们,然后将ShaderResourceView传递给着色器,并将它们与您选择的方法(乘法、加法等)组合。所有这些通常用于“延迟着色”


另一个源代码可以看到这种方法的作用,您可以在这里找到:

如果两个目标是独立的,并且您希望将一个渲染为另一个。我建议你做一些和我一样的事情


也就是说,使第一个渲染目标(在第一个过程中)成为纹理资源并从中采样。渲染到第二个时,从第一个采样。在我当前的项目中,我已经这样做了,将2或3个源混合在一起。

如果两个目标是独立的,并且您希望将一个渲染为另一个。我建议你做一些和我一样的事情

也就是说,使第一个渲染目标(在第一个过程中)成为纹理资源并从中采样。渲染到第二个时,从第一个采样。我在当前的项目中已经这样做了,将2到3个源混合在一起