【问题标题】:XNA: How to write to a texture using shadersXNA:如何使用着色器写入纹理
【发布时间】:2011-04-27 14:38:55
【问题描述】:

嘿,我想制作一个带有着色器的落沙动画(粉末游戏、火药沙、wxsand...)以供练习。

为此,我需要一个存储在纹理中的字节数组 (256x256),每一帧,这个数组都会根据一组规则进行修改(一个简单的 for 循环,其中包含一些 if)。

到目前为止,我锁定了纹理,应用了规则并在每一帧解锁,但这似乎使我的 cpu 不堪重负,那么有没有办法使用着色器修改(读取,然后写入)纹理?

欢迎提供任何建议或教程链接。

【问题讨论】:

    标签: xna shader


    【解决方案1】:

    您正在寻找RenderTargets ...您可以轻松地使用着色器绘制纹理,然后使用该纹理做任何您想做的事情。

    要记住的一件事是您必须更改算法。编写着色器是functional programming 中的一个练习,听起来像是你写的imperatively

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-17
      • 1970-01-01
      相关资源
      最近更新 更多