【发布时间】:2023-01-02 13:01:00
【问题描述】:
我对使用 gpu api 比较陌生,对 wgpu 来说甚至是新手,并且想弄乱绘制到表面的计算着色器。 不过,好像直接不允许这样吧?
在运行时尝试从表面创建到纹理视图的绑定时,会出现一个错误,指出 STORAGE BINDING 位是必需的,但是不允许在表面配置期间定义它。我还尝试让着色器将纹理接受为常规纹理而不是存储纹理,但这会带来绑定无效的自身错误。
直接写入表面纹理有什么好的方法,还是需要单独创建一个存储纹理?引擎盖下的渲染管道是否不直接写入表面的纹理视图? 如果是单独的纹理(我猜是),是否有最佳方法可遵循?
【问题讨论】:
-
请提供足够的代码,以便其他人可以更好地理解或重现问题。
-
我不确定我是否理解这个问题。但是......你正在尝试做的事情对我来说并没有真正的意义。如果你想写入表面纹理,你应该使用标准着色器而不是计算着色器。因为这正是他们的目的。
标签: rust graphics compute-shader wgpu-rs