Purity::Engine::Engine(const CommandLineArguments& commandLineArguments) : mProgramOptions(commandLineArguments) { std::cout << "Initializing some stuff..." << std::endl; mInputQueue = std::unique_ptr<std::queue<Event> >(new std::queue<Event>); mServerActionQueue = std::unique_ptr<std::queue<NetworkAction> >(new std::queue<NetworkAction>); if (mProgramOptions.headless == false) { initializeWindow(); #if defined(TARGET_OS_IPHONE) || defined(TARGET_IPHONE_SIMULATOR) SDL_StartTextInput(); #endif initializeRenderSystem(); initializeInputManager(); } else { TextureManager::sIsEnabled = false; } initializeSceneManager(); initializePhysicsSystem(); initializeNetworkSystem(); // TODO: move somewhere else? luabridge::setGlobal(LuaManager::getManager()->getState(), LuaManager::getManager(), "GPurityLuaManager"); }
virtual void main(const Arguments& argv) throw() override { initializeRenderSystem(); m_mouseAxisDelegate = xdl::XdevLAxisDelegateType::Create<FontTest, &FontTest::mouse_axis_handle>(this); getMouse()->registerDelegate(m_mouseAxisDelegate); m_buttonDelegate = xdl::XdevLButtonIdDelegateType::Create<FontTest, &FontTest::escape_key_handle>(this); getKeyboard()->registerDelegate(STRING("KEY_ESCAPE"), m_buttonDelegate); getWindow()->show(); getWindow()->setInputFocus(); while(m_appRun) { getCore()->update(); get3DProcessor()->setActiveDepthTest(xdl::xdl_true); get3DProcessor()->clearColorTargets(1.0f, 1.0f, 1.0f, 0.0f); get3DProcessor()->clearDepthTarget(1.0f); m_textEngine->setColor(200, 0, 0, 255); m_textEngine->useFont(m_font); m_textEngine->printText(L"The quick brown fox jumps over the lazy dog", m_xaxis, m_yaxis); m_textEngine->setColor(0, 0, 0, 255); m_textEngine->useFont(m_font2); m_textEngine->printText(L"The quick brown fox jumps over the lazy dog", 0, 0); get3DProcessor()->swapBuffers(); xdl::sleep(0.002); } }