#include #include "state/maingame.h" InputManager inputManager; GameStateManager gameState; int main() { std::cout << "Hello World!" << std::endl; std::string gameName = "rpg"; unsigned int windowStyle = sf::Style::Titlebar | sf::Style::Close; sf::ContextSettings settings; settings.antialiasingLevel = 16; sf::RenderWindow window(sf::VideoMode(1280, 720), gameName, windowStyle, settings); window.clear(sf::Color(0, 0, 0)); window.display(); //window.setVerticalSyncEnabled(true); window.setFramerateLimit(60); gameState.SetWindow(&window); gameState.SetState(new MainGame()); sf::Clock fpsTimer; sf::Clock timer; sf::Time timeElapsed; // Run the program as long as the window is open while (window.isOpen()) { // Check all the window's events that were triggered since the last iteration of the loop sf::Event event; while (window.pollEvent(event)) { // Close window : exit if (event.type == sf::Event::Closed || sf::Keyboard::isKeyPressed(sf::Keyboard::Escape)) { window.close(); } // Enter fullscreen mode : key combination : Alt+Enter if (event.type == sf::Event::KeyPressed) { if (event.key.code == sf::Keyboard::Return) { if (sf::Keyboard::isKeyPressed(sf::Keyboard::LAlt)) { if (windowStyle == sf::Style::Fullscreen) { windowStyle = sf::Style::Titlebar | sf::Style::Close; } else { windowStyle = sf::Style::Fullscreen; } window.create(sf::VideoMode(1280, 720), gameName, windowStyle, settings); window.setVerticalSyncEnabled(true); } } } } window.clear(sf::Color(72, 152, 72)); gameState.Update(); gameState.Render(); window.display(); timeElapsed = timer.getElapsedTime(); if (timeElapsed.asSeconds() > 1) { // Display current FPS in window title timeElapsed = fpsTimer.getElapsedTime(); int fps = 1000000 / timeElapsed.asMicroseconds(); window.setTitle(gameName + " - fps: " + std::to_string(fps)); timer.restart(); } fpsTimer.restart(); } return 0; }