您如何获得HLSL计算的输出?

| 我基本上想使用.NET将GPU结果捕获到位图文件中。我可能会使用XNA,而我的工作流程将是这样的: 使用自定义输入数据调用效果 使效果运行每个像素的过程 从效果中获取结果(???) 将结果另存为位图 谢谢... 编辑 Liortal的答案摘要:   要使用渲染目标,请创建一个   具有宽度的RenderTarget2D对象,   高度,以及您喜欢的其他选项。   然后打电话   要制作的GraphicsDevice.SetRenderTarget   您的渲染目标为当前渲染   目标。从现在开始,任何平局   您拨打的电话会吸引您的   渲染目标。完成后   使用渲染目标,调用   GraphicsDevice.SetRenderTarget到   新的渲染目标(或对于null   后台缓冲区)。然后,您可以随时   调用RenderTarget2D.GetTexture获得   的渲染目标的内容   进一步处理。     
已邀请:
        在此处阅读有关渲染目标及其使用方法的更多信息:http://msdn.microsoft.com/zh-cn/library/bb976073.aspx 请注意,该链接指向的是XNA 3.1,这是令人敬畏的Shawn Hargreaves在XNA 4中对该区域所做的更改的相关文章:http://blogs.msdn.com/b/shawnhar/archive/2010/03/ 26 / rendertarget-changes-xna-game-studio-4-0.aspx     
        
RenderTarget
\是您在这里追求的。设置
RenderTarget
graphicsDevice.SetRenderTarget(myRenderTarget);
),绘制场景,然后使用
SaveAsJpeg
SaveAsPng
方法保存输出。 这是XNA 4版本的RenderTarget文档。 但是,人们提到内存泄漏,因此我将使用以下替代方法: BmpWriter 该链接包含您需要的源代码(如上所述)。     

要回复问题请先登录注册