gpt4 book ai didi

directx - DirectX 计算着色器是否支持共享内存中的二维数组?

转载 作者:行者123 更新时间:2023-12-04 05:02:00 27 4
gpt4 key购买 nike

我想用groupshared DirectX 计算着色器中的内存以减少全局内存带宽并有望提高性能。我的输入数据是 Texture2D我可以像这样使用二维索引来访问它:

Input[threadID.xy]

我想要一个共享内存的二维数组来缓存输入数据的一部分,所以我尝试了显而易见的:
groupshared float SharedInput[32, 32];

它不会编译。错误消息说 syntax error: unexpected token ',' .

有没有办法拥有共享内存的二维数组?如果不是,那么处理存储在共享内存的一维数组中的二维数据的好技术是什么?

最佳答案

groupshared数组不能用多维索引编制索引。你能得到的最接近的是一个数组数组,其中每个维度都是独立索引的。

groupshared float SharedInput[32][32];

它不如多维索引好,但至少您不必手动计算线性索引。

关于directx - DirectX 计算着色器是否支持共享内存中的二维数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16046293/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com