Example #1
0
int main()
{
   Physics app;
   // DIYmain app;

    if (app.startup() == false)
    {
        return -1;
    }

    while (app.update() == true)
    {
        app.draw();
    }

    app.shutdown();

    return 0;
}
Example #2
0
EXPORT
int startGUInity()
{
    
    int notOK = GraphicsSystem::getInstance()->init(1024,768);
	if (notOK)
		return 1;
    
    AssetDatabase::init();
    
    Input input(GraphicsSystem::getInstance()->getWindow());
	
	SoundSystem::getInstance()->init();
    
    Physics physics;
    physics.init();
    
    
    EngineMode engineMode = EngineMode::editor;
    
    shared_ptr<Editor> editor = make_shared<Editor>();
    editor->init();
    
    shared_ptr<Game> game = make_shared<Game>();
    game->init();
    
    shared_ptr<MyGame> myGame = make_shared<SpaceShipGame>();
    
    myGame->setupInitialScene();
    
    editor->world->awake();
    game->world->awake();
    
    while (!glfwWindowShouldClose(GraphicsSystem::getInstance()->getWindow().get())) {
        Time::frameStart();
        
        Input::updateInputState();
        
        
        switch (engineMode)
        {
            case EngineMode::editor:
                editor->update(Time::deltaTime,game->world);
                break;
            case EngineMode::game:
                game->update(Time::deltaTime);
                break;
            default:
                break;
        }
		
        if (Input::getKeyPressed(GLFW_KEY_1))
            engineMode = EngineMode::editor;
        if (Input::getKeyPressed(GLFW_KEY_2))
            engineMode = EngineMode::game;
        
        float fps = Time::frameEnd();
        cout << "FPS:" << 1.0f/fps << endl;
    }
    
    physics.shutdown();
	
    editor->shutdown();
    
    game->shutdown();
    
    // close GL context and any other GLFW resources
	SoundSystem::getInstance()->shutdown();
    GraphicsSystem::getInstance()->shutdown();
    
    return 0;
}