void video_DrawFrame(){ uint16_t *src = (uint16_t *)GPU->GetDisplayInfo().masterNativeBuffer; vita2d_start_drawing(); vita2d_clear_screen(); memcpy(data, src, sizeof(uint16_t) * 256 * 192 * 2); switch(video_layout){ case LAYOUT_PORTRAIT: vita2d_draw_texture_scale_rotate(fb, PORTRAIT_X, PORTRAIT_Y, 2, 2, PI/2); break; case LAYOUT_SBS: vita2d_draw_texture_part_scale(fb, 0, SBS_Y, 0, 0, 256, 192, SBS_SCALE, SBS_SCALE); vita2d_draw_texture_part_scale(fb, SBS_X, SBS_Y, 0, 192, 256, 192, SBS_SCALE, SBS_SCALE); break; case LAYOUT_LANDSCAPE: default: vita2d_draw_texture_scale(fb, LANDSCAPE_X, LANDSCAPE_Y, LANDSCAPE_SCALE, LANDSCAPE_SCALE); break; } vita2d_draw_rectangle(930,514,30,30,RGBA8(30,30,30,255)); vita2d_end_drawing(); vita2d_swap_buffers(); }
void pspVideoPutImage(const PspImage *image, int dx, int dy, int dw, int dh) { vita2d_texture *tex = image->Texture; float scalex = (float)dw/(float)image->Viewport.Width; float scaley = (float)dh/(float)image->Viewport.Height; vita2d_draw_texture_part_scale(tex, dx, dy, image->Viewport.X, image->Viewport.Y, image->Viewport.Width, image->Viewport.Height, scalex, scaley); }