#include <SDL2/SDL.h>
#include <stdio.h>
#include <stdbool.h>
const int SCREEN_WIDTH = 640;
const int SCREEN_HEIGHT = 480;
void drawtail(SDL_Renderer* renderer, int x, int y, int typefoo) {
SDL_SetRenderDrawColor(renderer, 255, 255, 255, 255);
SDL_RenderFillRect(renderer, &(SDL_Rect){x*64, y*64, 64, 64});
}
void drawing(SDL_Renderer* renderer) {
bool quit = false;
SDL_Event event;
struct {
}
while (!quit) {
while (SDL_PollEvent(&event) != 0) {
if (event.type == SDL_QUIT) {
quit = true;
}
}
SDL_SetRenderDrawColor(renderer, 43, 43, 43, 255);
SDL_RenderClear(renderer);
for(int y=0;y<5;y++) {
for(int x=0;x<5;x++) {
drawtail(renderer, x, y, 0);
}
}
SDL_RenderPresent(renderer);
SDL_Delay(16);
}
}
int main() {
// 1. Инициализируем подсистему видео
if (SDL_Init(SDL_INIT_VIDEO) < 0) {
printf("Ошибка инициализации: %s\n", SDL_GetError());
return 1;
}
// 2. Создаем окно
SDL_Window* window = SDL_CreateWindow(
"SDL2 Window",
SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED,
SCREEN_WIDTH, SCREEN_HEIGHT,
SDL_WINDOW_SHOWN
);
if (!window) { SDL_Quit(); return 1; }
// 3. Создаем рендерер (грубо говоря, холст с аппаратным ускорением видеокарты)
SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
if (!renderer) { SDL_DestroyWindow(window); SDL_Quit(); return 1; }
drawing(renderer);
// 5. Очистка памяти перед выходом
SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(window);
SDL_Quit();
return 0;
}