Окно SDL прозрачно

Я изучаю SDL и пытался настроить окно с красным фоном. Выполнил этот код, но получил результат, отличный от ожидаемого.

#include <stdio.h>
#include "SDL2/SDL.h"

int main(int argc, char const *argv[]) {

    if(SDL_Init(SDL_INIT_EVERYTHING) != 0) {
        SDL_Log(SDL_GetError());
        return -1;
    }

    SDL_Window* wnd = SDL_CreateWindow("Test", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 300, 300, SDL_WINDOW_OPENGL);
    SDL_Renderer* renderer = SDL_CreateRenderer(wnd, 0, SDL_RENDERER_ACCELERATED);

    SDL_SetRenderDrawColor(renderer, 255, 255, 255 , 255);
    SDL_RenderClear(renderer);
    SDL_RenderPresent(renderer);

    SDL_Delay(6000);

    SDL_Quit();
    return 0;
}

Прозрачное окно


person Fensi322    schedule 06.09.2018    source источник
comment
SDL_SetRenderDrawColor(рендерер, 255, 0, 0, 255); попробуй сделать это красным   -  person Simo    schedule 06.09.2018
comment
Вы создаете окно для использования с OpenGL, но используете API-интерфейсы SDL для его рисования...   -  person John5342    schedule 07.09.2018


Ответы (1)


Обработайте очередь событий ОС с помощью цикла SDL_WaitEvent()/SDL_PollEvent()/SDL_PumpEvents() вместо большого блока SDL_Delay(), блокирующего основной поток.

person genpfault    schedule 06.09.2018