Skip to content

Instantly share code, notes, and snippets.

@sapher
Created December 29, 2015 08:41
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sapher/9ea649cd51118ec295f0 to your computer and use it in GitHub Desktop.
Save sapher/9ea649cd51118ec295f0 to your computer and use it in GitHub Desktop.
SDL2 Basic Window code example
#include <stdbool.h>
#include <SDL.h>
int main(int argc, char** argv) {
// Declaration
SDL_Window* window;
SDL_Renderer* renderer;
bool isRunning = true;
// Initialisation
if(SDL_Init(SDL_INIT_VIDEO) != 0) {
printf("Unable to init SDL : %s", SDL_GetError());
return 1;
}
window = SDL_CreateWindow("MyWindow", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 640, 480, SDL_WINDOW_SHOWN);
if(window == NULL) {
printf("Unable to create window : %s", SDL_GetError());
return 1;
}
renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
if(renderer == NULL) {
printf("Unable to create renderer : %s", SDL_GetError());
return 1;
}
// Infinite loop
while(isRunning) {
SDL_Event event;
if(SDL_PollEvent(&event)) {
if(event.type == SDL_QUIT) {
isRunning = false;
}
}
// Clear screen
SDL_RenderClear(renderer);
// render code goes here.....
// Render modification
SDL_RenderPresent(renderer);
}
// Free
SDL_DestroyWindow(window);
SDL_DestroyRenderer(renderer);
SDL_Quit();
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment