在HLSL纹理变量(XNA)中存储屏幕纹理

Mat*_*har 2 c# xna hlsl xna-4.0

有没有办法将屏幕纹理存储在HLSL纹理变量中,而不将其从C#代码中传递出来?

例如,可以通过使用来访问当前的drowing纹理

sampler TextureSampler : register(s0); 
Run Code Online (Sandbox Code Playgroud)

有什么方法可以对目前的scrren做同样的事情吗?

小智 5

不.我假设您正在使用SpriteBatch,因此寄存器0隐式设置为当前纹理.要获取屏幕上的当前像素,您必须将所有内容绘制到渲染目标,然后将该渲染目标传递给HLSL.