像素着色器函数tex1D对Texture2d的作用是什么

时间:2011-11-16 19:48:33

标签: xna-4.0 hlsl pixel-shader

如果我在已经初始化为texture2d的纹理上从我的像素着色器调用tex1d,它会将数据视为一维数组,然后只需将元素放在指定的位置吗?

例如,如果你有一个10 x 10的纹理(这将是一个100个元素的长度数组)并且你调用tex1d(mySampler,0.95)它会给你回到元素95吗?

1 个答案:

答案 0 :(得分:1)

我想你会发现这个引用(关于DirectX 9,这是XNA所基于的)相关:

  

因为运行时不支持1D纹理,所以编译器将使用2D纹理,并知道y坐标不重要。由于tex1D(s,t)(DirectX HLSL)是作为2D纹理查找实现的,因此编译器可以有效地选择y分量。

换句话说:指定X坐标,Y坐标未定义。

来自here

所以,不,它不会打开索引。但是你already got an answer about how to do that

相关问题