I have a fully functional set of 3 textures, and a fragment shader with functions that access the textures and return structures, to effective have a database.
What I am concerned with is that one of them is comprised of 2 element, 32 bit float, texels. I access it like:
vec4 texel = texture2DRect(sampler_nm, addr);
What happens is texel[0], texel[1], & texel[2] all have the value of the first element that went in. texel[3] has the value of the second element. This sort of scares me. I was hoping the first 2 elements would have the values, and [2] & [3] either be the next texel or be garbage.
This is occurring on a GeForce 8800 GTX/PCI/SSE2 renderer, but compiled using the ARB version of shaders. How thin is the ice I am on, in terms of portability? Should I redesign? Does anyone know what 3 element texels do?