在Texture2D上执行图像处理算法的有效方法

时间:2011-03-09 20:50:27

标签: xna texture2d

我有一种情况,我需要在每次旋转时对纹理应用一些算法。

我的问题是 - 在XNA中应用图像处理算法的最佳方法是什么?

现在纹理是一个RenderTarget2D,算法用它的像素执行一些操作并将它们设置回RenderTarget2D。这种方法导致我的应用程序终止,而且性能非常差。

我搜索了stackoverflow,但没有找到与主题相关的任何内容。 我还阅读了这篇文章http://blogs.msdn.com/b/shawnhar/archive/2008/04/14/stalling-the-pipeline.aspx并了解我的方法有多糟糕。

1 个答案:

答案 0 :(得分:1)

根据您可能需要的操作,通过HLSL着色器进行操作将是一个非常好的主意。

着色器确实是正确的选择,因为您可以利用GPU拥有的多个核心而且您不需要解析rendertarget中的数据;数据在进入屏幕的过程中进行处理而不会导致任何停顿。