SDL_Texture из IMG_Load () не в состоянии рисовать? - PullRequest
0 голосов
/ 09 октября 2019

Единственное, что я вижу, это RenderDrawColor.

Также "circle.png" находится в правой папке (где находится main.cpp).

#include <SDL.h>
#include <SDL_Image.h>

int main(int argc,char* args[]) {
    SDL_Init(SDL_INIT_EVERYTHING);
    IMG_Init(IMG_INIT_PNG);
    SDL_Window* window = SDL_CreateWindow("_", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 640, 480, SDL_WINDOW_SHOWN);
    SDL_Renderer* render = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
    SDL_SetRenderDrawColor(render,0, 255, 255, 255);
    SDL_Surface* img = IMG_Load("circle.png");
    SDL_Texture* texture = SDL_CreateTextureFromSurface(render, img);
    SDL_FreeSurface(img);

    SDL_Event event;
    while (1) {
        while (SDL_PollEvent(&event)) {
            switch (event.type) {
            case SDL_QUIT:
                return 0;
            }
        }
    SDL_RenderClear(render);
    SDL_RenderCopy(render, texture, NULL, NULL);
    SDL_RenderPresent(render);
    }

    system("PAUSE");
    return 0;
}   

1 Ответ

1 голос
/ 10 октября 2019

Пришлось включить zlib1.dll и libpng16-16.dll в ту же папку, что и cpp.

libpng16-16.dll зависит от zlib1.dll.

...