void Game::init() { //Set up log file logFile.open("log.txt", std::fstream::out); //Make std::cerr redirect to the log file std::cerr.rdbuf(logFile.rdbuf()); logFile << "Initializing...\n"; SDL_Init(SDL_INIT_EVERYTHING); if((window = SDL_CreateWindow(baseWindowTitle.c_str(), SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, screenWidth, screenHeight, SDL_WINDOW_OPENGL)) == 0) { logFile << "Error creating window: " << SDL_GetError() << std::endl; stop(); return; } logFile << "Created window" << std::endl; if((renderer = SDL_CreateRenderer(window, -1, 0)) == NULL) { logFile << "Error creating renderer: " << SDL_GetError() << std::endl; stop(); return; } logFile << "Created renderer" << std::endl; if((glcontext = SDL_GL_CreateContext(window)) == NULL) { logFile << "Error creating OpenGL context: " << SDL_GetError() << std::endl; stop(); return; } glewInit(); logFile << "Created OpenGL context" << std::endl; //Initialize OpenGL SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LEQUAL); resizeWindow(screenWidth, screenHeight); lastMouseState = 0; //Initialize things here curScene = new Scene(); // logFile << "Finished initializing" << std::endl; }