/* OpenGL - unlike GLES - can download pixel data into a sub region of * a larger destination buffer */ static void prep_gl_for_pixels_download_full (CoglContext *ctx, int image_width, int pixels_rowstride, int image_height, int pixels_src_x, int pixels_src_y, int pixels_bpp) { GE( ctx, glPixelStorei (GL_PACK_ROW_LENGTH, pixels_rowstride / pixels_bpp) ); GE( ctx, glPixelStorei (GL_PACK_SKIP_PIXELS, pixels_src_x) ); GE( ctx, glPixelStorei (GL_PACK_SKIP_ROWS, pixels_src_y) ); if (cogl_has_feature (ctx, COGL_FEATURE_ID_TEXTURE_3D)) GE( ctx, glPixelStorei (GL_PACK_IMAGE_HEIGHT, image_height) ); _cogl_texture_prep_gl_alignment_for_pixels_download (pixels_bpp, image_width, pixels_rowstride); }
void _cogl_texture_driver_prep_gl_for_pixels_download (int pixels_rowstride, int pixels_bpp) { _cogl_texture_prep_gl_alignment_for_pixels_download (pixels_rowstride); }