我正在用GLSL写一个着色器,我需要传递一定数量的信息。传递此信息的唯一实用方法是使用1-D纹理
我正在创建纹理并将GL_TEXTURE_MIN_FILTER
和GL_TEXTURE_MAG_FILTER
设置为GL_NEAREST
现在从着色器我需要访问纹理,这样我就可以精确地索引我输入的每个数字3值向量。
什么是一种可靠的方法来轻松完成这项工作?
我正在寻找的是一个公式,它采用数组的大小和我想要的索引,并给我[0,1]中的数字,它对应于我想要的纹素。
答案 0 :(得分:2)
idx/(size-1)
也许?只需确保idx和size首先浮动。
答案 1 :(得分:1)
刚刚发现OpenGL 3.0通过引入texelFetch()
功能使这一需求变得过时,这些功能也可用于扩展名GL_EXT_gpu_shader4