Okay, I should definitely be asleep right now, but this has got me scratching my head.
I'm in the process of porting some jit.gen stuff to jit.gl.pix and was getting confusing results in a few cases, which led me to construct the following patch as a simple test case. It features an empty 4-plane float32 10x8 matrix feeding two identical patches, one in jit.gen (which behaves as expected) and one in jit.gl.pix (which does not). The patch SHOULD simply count the pixels in each frame from left to right, beginning at the top left corner and wrapping around at the end of every line.
jit.gen does this just fine, beginning at 0 and counting to 79, as you can see in the associated jit.cellblock. jit.gl.pix, however, seems to have an offset of 5.5 on each dimension. I tested the same patch with an 8x8 matrix and a 16x16 matrix and the offsets were 4.5 and 8.5, so I assume that the offset is always equal to 0.5 * dim.0 + 0.5
I've visualized the output of jit.gl.pix by reading the texture back into a jit.matrix and looking at it in jit.cellblock, but I can also scale the values between 0 and 1 inside jit.gl.pix and observe the same issue in a pwindow. Am I missing some inherent aspect of working with jit.gl.pix? I'd love a better understanding of what's going on why!