ゲーム制作始めたい Hello SDL
このサイトがよくまとまってるのでありがたい!
ちょっとアレンジして60fpsでwindowの色がランダムに変わるようにした
//Using SDL and standard IO #include <SDL2/SDL.h> #include <stdio.h> #include <random> //Screen dimension constants const int SCREEN_WIDTH = 640; const int SCREEN_HEIGHT = 480; int main(int argc, char* args[]) { //The window we'll be rendering to SDL_Window* window = NULL; //The surface contained by the window SDL_Surface* screenSurface = NULL; //Initialize SDL if(SDL_Init( SDL_INIT_VIDEO ) < 0){ printf("SDL could not initialize! SDL_Error: %s\n", SDL_GetError()); } else { //Create window window = SDL_CreateWindow("SDL Tutorial: 60 FPS random color", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, SCREEN_WIDTH, SCREEN_HEIGHT, SDL_WINDOW_SHOWN); if(window == NULL) { printf( "Window could not be created! SDL_Error: %s\n", SDL_GetError() ); } else { //Get window surface screenSurface = SDL_GetWindowSurface(window); std::random_device rnd; for (int i = 0; i < 1000; i++) { int R = rnd() % 256; int G = rnd() % 256; int B = rnd() % 256; //Fill the surface white SDL_FillRect(screenSurface, NULL, SDL_MapRGB( screenSurface->format, R, G, B)); //Update the surface SDL_UpdateWindowSurface(window); //Wait two seconds SDL_Delay(1000.0/60); } } } //Destroy window SDL_DestroyWindow(window); //Quit SDL subsystems SDL_Quit(); return 0; }