static int display_bitmap(PrivInfo* priv, FtkBitmap* bitmap, int x, int y, int width, int height, int xoffset, int yoffset) { GLint crop[4] = {0}; crop[0] = x; crop[1] = y; crop[2] = width; crop[3] = height; if(Android_PreRender() != RET_OK) { return 0; } glColor4f(1,1,1,1); glBindTexture(GL_TEXTURE_2D, 0); glTexParameteriv(GL_TEXTURE_2D, GL_TEXTURE_CROP_RECT_OES, crop); glTexParameterx(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameterx(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameterx(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); glTexParameterx(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); glTexEnvx(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE); glEnable(GL_TEXTURE_2D); glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, ftk_bitmap_width(bitmap), ftk_bitmap_height(bitmap), 0, GL_RGBA, GL_UNSIGNED_BYTE, ftk_bitmap_lock(bitmap)); glDrawTexiOES(xoffset, yoffset, 0, width, height); Android_Render(); return 0; }
void Android_GL_SwapWindow(_THIS, SDL_Window * window){ Android_Render(); }