mirror of
https://github.com/libsdl-org/SDL.git
synced 2026-06-23 06:21:57 +00:00
if all one needs is a raw framebuffer to the PSP's vram, instead of dealing with renderers and textures, that need to be copied hence and forth, this method allows one to create a window, set the pixel format using SDL_SetWindowDisplayMode() - preferably BGR565 for optimal speed (the other possible natively supported option is ABGR8888) - and then request SDL_GetWindowSurface(), which provides one with a surface with direct framebuffer access. note that the pixels pointer inside the surface will be switched after each call because of double-buffering. it's advisable to overwrite all pixels of the PSP visible area (480x272) to not encounter old data. after writing the pixels, a call to SDL_UpdateWindowSurface() sends the changes to the graphics chip. the result is a raw framerate of 250 fps with BGR565 mode, under optimal circumstances - i.e. nothing else is done than drawing, and the drawing loop is as simple as possible. that leaves about 12 ms per frame for other tasks and still allow a fluent 60 fps. |
||
|---|---|---|
| .. | ||
| direct3d | ||
| direct3d11 | ||
| direct3d12 | ||
| metal | ||
| opengl | ||
| opengles | ||
| opengles2 | ||
| ps2 | ||
| psp | ||
| software | ||
| vitagxm | ||
| SDL_d3dmath.c | ||
| SDL_d3dmath.h | ||
| SDL_render.c | ||
| SDL_sysrender.h | ||
| SDL_yuv_sw.c | ||
| SDL_yuv_sw_c.h | ||