Первоначально в SDL для настройки поверхности можно было использовать следующий код:
SDL_Surface *screen = SDL_SetVideoMode(800, 600, 8, 0);
Теперь в SDL2 необходимо использовать следующий код:
SDL_Window *window = SDL_CreateWindow("Title", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 800, 600, 0);
SDL_Surface *surface = SDL_GetWindowSurface(window);
Моя проблема в том, что SDL_CreateWindow не предлагает способа установить bbp окна или поверхности. Кажется, по умолчанию 32 бита. Я пытался использовать SDL_ConvertSurfaceFormat
, но surface->format->BitsPerPixel
остается равным 32.
Как я могу создать 8-битную поверхность в SDL 2? Я понимаю, что мне понадобится цветовая палитра.