【发布时间】:2011-12-29 22:21:35
【问题描述】:
根据CUDA编程指南,纹理获取返回的值是
tex(x) = (1-a)T[i] + aT[i+1] for a one-dimensional texture
where i = floor(Xb), a = frac(Xb), Xb=x-0.5
假设我们有一个只有两个纹理的一维纹理。例如:
T[0] = 0.2, T[1] = 1.5
假设我们要获取 1 处的 texal,我认为应该返回 T[1],即 1.5。
但是,如果您遵循编程指南中给出的规则,则返回值将是:
Xb = 1 - 0.5 = 0.5
a = 0.5
i = 0
return value = 0.5*T[0] + 0.5*T[1] = 0.85
这对我来说没有任何意义。有人可以解释为什么 CUDA 以这种方式进行线性过滤吗?谢谢
【问题讨论】:
标签: cuda