to read from?
Buffers used for reading on the GPU are referred to as textures. You can create one in OpenGL using glTexImage2D() (for 2D textures). To efficiently download data from the CPU into an existing 2D texture, use glTexSubImage2D(). Textures are limited to certain sizes (up to 4096 values in each dimension, additionally limited by GPU memory constraints), so most applications rely on a 1D to 2D mapping: A 1D array on the CPU of length N becomes a √N x √N texture on the GPU. [QUESTION: Apparently, the texvc plugin is not installed, so the “math” tags don’t work.