void Client::StartupOgre() { Ogre::LogManager* logMgr = OGRE_NEW Ogre::LogManager; logMgr->createLog("DefaultLog", true, false, false); mOgreRoot = new Ogre::Root("../data/config/plugins.cfg"); // setup resources // Load resource paths from config file Ogre::ConfigFile cf; cf.load("../data/config/resources.cfg"); // Go through all sections & settings in the file Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while(seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for(i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation( archName, typeName, secName); } } // configure // Show the configuration dialog and initialise the system if(!(mOgreRoot->restoreConfig() || mOgreRoot->showConfigDialog())) { exit(0); } mWindow = mOgreRoot->initialise(true, "Client Window"); // Set default mipmap level (NB some APIs ignore this) Ogre::TextureManager::getSingleton().setDefaultNumMipmaps(5); // initialise all resource groups // Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); Ogre::ResourceGroupManager::getSingleton().initialiseResourceGroup("Basics"); Ogre::ResourceGroupManager::getSingleton().initialiseResourceGroup("GUI"); InitializeWindow(); // ogre loaded }
//-------------------------------------------------------------------------- void CompositorDemo::setupResources(void) { // Load resource paths from config file Ogre::ConfigFile cf; #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE Ogre::String mResourcePath; mResourcePath = bundlePath() + "/Contents/Resources/"; cf.load(mResourcePath + "resources.cfg"); #else cf.load("resources.cfg"); #endif // Go through all sections & settings in the file Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE // OS X does not set the working directory relative to the app, // In order to make things portable on OS X we need to provide // the loading with it's own bundle path location Ogre::ResourceGroupManager::getSingleton().addResourceLocation( Ogre::String(bundlePath() + "/" + archName), typeName, secName); #else Ogre::ResourceGroupManager::getSingleton().addResourceLocation( archName, typeName, secName); #endif } } Ogre::LogManager::getSingleton().logMessage( "Resource directories setup" ); }
void MyApp::loadResources() { Ogre::ConfigFile cf; cf.load("resources.cfg"); Ogre::ConfigFile::SectionIterator sI = cf.getSectionIterator(); Ogre::String sectionstr, typestr, datastr; while (sI.hasMoreElements()) { sectionstr = sI.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = sI.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typestr = i->first; datastr = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation (datastr, typestr, sectionstr); } } Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); }
void loadResources(){ Ogre::ConfigFile cf; cf.load("resources_d.cfg"); Ogre::ConfigFile::SectionIterator sectionIter = cf.getSectionIterator(); Ogre::String sectionName, typeName, dataname; while (sectionIter.hasMoreElements()){ sectionName = sectionIter.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = sectionIter.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i){ typeName = i->first; dataname = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(dataname, typeName, sectionName); } } Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); }
bool App::start() { mRoot = new Ogre::Root("plugins_d.cfg", "ogre.cfg", "Ogre.log"); Ogre::ConfigFile configFile; configFile.load("resources_d.cfg"); Ogre::ConfigFile::SectionIterator seci = configFile.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation( archName, typeName, secName); } } if (!(mRoot->restoreConfig() || mRoot->showConfigDialog())) { return false; } mWindow = mRoot->initialise(true, "ZappyGraph"); Ogre::TextureManager::getSingleton().setDefaultNumMipmaps(5); Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); Game* game = new Game(); NetworkManager *net = new NetworkManager(game); Menu *menuManager = new Menu(net); game->init(mRoot, mWindow, menuManager, net); game->createMenu(); while (true) { net->update(); Ogre::WindowEventUtilities::messagePump(); if (mWindow->isClosed()) return false; if (!mRoot->renderOneFrame()) return false; } return true; }
void Application::setupResources(void) { Ogre::ConfigFile cf; cf.load(mResourcePath + "resources.cfg"); Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); } } }
void OgreCPP::setupResources(std::string mResourcePath) { // Load resource paths from config file Ogre::ConfigFile cf; // FILE * pFile; // pFile = fopen ("myfile.txt","w"); #ifdef __linux cf.load(mResourcePath+"/resources_linux.cfg"); // Go through all sections & settings in the file Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); } } #else //cf.load(mResourcePath+"/resources.cfg"); // Add resource locations std::cout << "resource path: " << mResourcePath << std::endl; std::cout << "resource path: " << mResourcePath << "/Contents/Mac" << std::endl; printf("ADDING RESOURCES FOR MAC\n"); mRoot->addResourceLocation(mResourcePath + "/Contents/Resources/media/", "FileSystem"); mRoot->addResourceLocation(mResourcePath + "/Contents/Resources/media/fonts", "FileSystem"); mRoot->addResourceLocation(mResourcePath + "/Contents/Resources/media/materials/programs", "FileSystem"); mRoot->addResourceLocation(mResourcePath + "/Contents/Resources/media/materials/scripts", "FileSystem"); mRoot->addResourceLocation(mResourcePath + "/Contents/Resources/media/materials/textures", "FileSystem"); mRoot->addResourceLocation(mResourcePath + "/Contents/Resources/media/models", "FileSystem"); mRoot->addResourceLocation(mResourcePath + "/Contents/Resources/media/particle", "FileSystem"); #endif }
void App::initOgre(bool showDebugWindow) { Ogre::ConfigFile cf; mRoot = new Ogre::Root("plugins.cfg"); cf.load("../../media/resources.cfg"); mRoot->addFrameListener(this); // add resources Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) Ogre::ResourceGroupManager::getSingleton().addResourceLocation(i->second, i->first, secName); } // initialize render system mRoot->setRenderSystem(mRoot->getRenderSystemByName("OpenGL Rendering Subsystem")); mRoot->initialise(false, "ARLib Example"); // create windows: if (mRift) { Ogre::NameValuePairList miscParams; miscParams["monitorIndex"] = Ogre::StringConverter::toString(1); miscParams["border"] = "none"; miscParams["vsync"] = "true"; mWindow = mRoot->createRenderWindow("ARLib Example", 1920, 1080, true, &miscParams); } if (showDebugWindow) { Ogre::NameValuePairList miscParamsSmall; miscParamsSmall["monitorIndex"] = Ogre::StringConverter::toString(0); mSmallWindow = mRoot->createRenderWindow("ARLib Example (debug window)", 1920 / 2, 1080 / 2, false, &miscParamsSmall); if (!mWindow) mWindow = mSmallWindow; } Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); }
void Application::defineResources() { Ogre::String sectionName, typeName, resName; Ogre::ConfigFile cFile; cFile.load("resources.cfg"); Ogre::ConfigFile::SectionIterator secIt = cFile.getSectionIterator(); while (secIt.hasMoreElements()) { sectionName = secIt.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap* settings = secIt.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator it; for (it=settings->begin();it!=settings->end();++it) { typeName= it->first; resName = it->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(resName,typeName,sectionName); } } }
static void loadResources(const char *name) { cf.load(openAPKFile(name)); Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); while (seci.hasMoreElements()) { Ogre::String sec, type, arch; sec = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap* settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); i++) { type = i->first; arch = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(arch, type, sec); } } }
void MainWindow::cargarRecursos() { QSettings settings("toglia3d","SpriteSceneViewer"); QString rutaRecursosSetting = settings.value("rutaRecursos", QString("/home")).toString(); QFileDialog openDialog; //openDialog.exec(); QString filtro = tr("*.cfg"); rutaRecursos = openDialog.getOpenFileName( this, tr("Abrir"), rutaRecursosSetting, filtro ); if(!rutaRecursos.isEmpty()){ settings.setValue("rutaRecursos",rutaRecursos); Ogre::ConfigFile cf; cf.load(rutaRecursos.toStdString()); Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation( archName, typeName, secName); } } Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); } }
SettingsFileParser::SettingsFileParser(Ogre::String filePath) : mFilePath(filePath) { // Set default settings mRestoreConfig = false; mLockMouse = true; mDebugDraw = true; mHumanChars = true; mObstacles = true; mSingleNavmesh = false; mRaycastScene = false; mTempObstacleSteering = true; mComplexObstacles = true; mTerrain = false; mPaged = false; mTerrainTilesX = 1; mTerrainTilesZ = 1; mTerrainTileSize = 12000.0f; mTerrainTileResolution = 513; mTerrainHeightScale = 1.0f; // Load settings from config file Ogre::ConfigFile settingsFile = Ogre::ConfigFile(); settingsFile.loadDirect(filePath); Ogre::ConfigFile::SectionIterator sectIt = settingsFile.getSectionIterator(); Ogre::String sectionName, optionName, optionValue; while(sectIt.hasMoreElements()) { sectionName = sectIt.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *sectSettings = sectIt.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator it; for(it = sectSettings->begin(); it != sectSettings->end(); it++) { optionName = it->first; optionValue = it->second; addOption(sectionName, optionName, optionValue); } } }
/** Set up Ogre resources */ void QtSpacescapeWidget::setupResources(void) { // Load resource paths from config file Ogre::ConfigFile config; config.load("resources.cfg"); // Go through all sections & settings in the file Ogre::ConfigFile::SectionIterator it = config.getSectionIterator(); Ogre::String secName, typeName, archName; while (it.hasMoreElements()) { secName = it.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = it.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); } } }
void BaseApplication::setupResources(void) { // Load resource paths from config file Ogre::ConfigFile cf; cf.load(mResourcesCfg); // Go through all sections & settings in the file Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation( archName, typeName, secName); } } }
void RenderPump::loadConfig() { Ogre::ConfigFile cf; #if OGRE_DEBUG_MODE cf.load("setting_d.cfg"); #else cf.load("setting.cfg"); #endif Ogre::ConfigFile::SectionIterator secIter = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while(secIter.hasMoreElements()) { secName = secIter.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = secIter.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator iter; for(iter=settings->begin(); iter!=settings->end(); iter++) { theApp.addPath(iter->first, iter->second); } } }
void BareOgre::setupResources() { Ogre::ConfigFile cf; cf.load(mResourcesCfg); //TODO convert to C++11 Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); i++) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation( archName, typeName, secName ); } } }
void OgrePong::setupResources(void) { // Load resource paths from config file Ogre::ConfigFile cf; #if OGRE_DEBUG_MODE == 1 && (OGRE_PLATFORM != OGRE_PLATFORM_APPLE && OGRE_PLATFORM != OGRE_PLATFORM_APPLE_IOS) // add _d suffix to config files cf.load(mResourcePath + "resources_d.cfg"); #else cf.load(mResourcePath + "resources.cfg"); #endif // Go through all sections & settings in the file Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE // OS X does not set the working directory relative to the app, // In order to make things portable on OS X we need to provide // the loading with it's own bundle path location Ogre::ResourceGroupManager::getSingleton().addResourceLocation( String(macBundlePath() + "/" + archName), typeName, secName); #else Ogre::ResourceGroupManager::getSingleton().addResourceLocation( archName, typeName, secName); #endif } } }
void Overseer::setupResources() { Ogre::ConfigFile cf; cf.load("resources.cfg"); Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingletonPtr()->addResourceLocation(archName,typeName,secName); } } Ogre::TextureManager::getSingletonPtr()->setDefaultNumMipmaps(5); }
void Main::GetConfig() { Ogre::ConfigFile cf; #if _DEBUG cf.load("BlackstarFramework_d.cfg"); #else cf.load("BlackstarFramework.cfg"); #endif Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; if (mSettings.find(secName) == mSettings.end()) mSettings[secName] = std::vector<KeyVal>(); for (i = settings->begin(); i != settings->end(); i++) { bool added = false; if (secName == "Graphics") { for (auto x = mSettings[secName].begin(); x != mSettings[secName].end(); x++) { if (x->Key == i->first) { x->Val = i->second; added = true; break; } } } else mSettings[secName].push_back(KeyVal(i->first, i->second)); } } }
void COgreVRApplication::setupResources() { // Load resource paths from config file Ogre::ConfigFile l_oConfigFile; l_oConfigFile.load(m_sResourcePath + "/resources.cfg"); // Go through all sections & settings in the file Ogre::ConfigFile::SectionIterator l_oSectionIterator = l_oConfigFile.getSectionIterator(); Ogre::String l_sSecName, l_sTypeName, l_sArchName; while (l_oSectionIterator.hasMoreElements()) { l_sSecName = l_oSectionIterator.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = l_oSectionIterator.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { l_sTypeName = i->first; l_sArchName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(m_sResourcePath + "/" + l_sArchName, l_sTypeName, l_sSecName); } } }
void GraphicsOgre::defineRessources() { Ogre::String secName, typeName, archName; Ogre::ConfigFile cf; Ogre::String resource_path = "./"; cf.load(resource_path + "resources.cfg"); Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); } } Ogre::TextureManager::getSingleton().setDefaultNumMipmaps(5); Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); }
void RenderPump::setupResources() { Ogre::ConfigFile cf; #if OGRE_DEBUG_MODE cf.load("resources_d.cfg"); #else cf.load("resources.cfg"); #endif Ogre::ConfigFile::SectionIterator secIter = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while(secIter.hasMoreElements()) { secName = secIter.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = secIter.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for(i=settings->begin(); i!=settings->end(); i++) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation( archName, typeName, secName); } } }
void OgreView::setupResources() { mRoot = new Ogre::Root(); Ogre::ConfigFile cf; cf.load("resources.cfg"); Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while(seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap* settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for(i=settings->begin(); i!=settings->end(); ++i){ typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); } } mRoot->restoreConfig(); mRoot->initialise(false); }
void QtOgre::loadResources() { // Load resource paths from config file #ifdef _DEBUG mResourcesCfg = "resources_d.cfg"; mPluginsCfg = "plugins_d.cfg"; #else mResourcesCfg = "resources.cfg"; mPluginsCfg = "plugins.cfg"; #endif Ogre::ConfigFile cf; cf.load(mResourcesCfg); // Go through all sections & settings in the file Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; #if OGRE_PLATFORM == OGRE_PLATFORM_APPLE // OS X does not set the working directory relative to the app, // In order to make things portable on OS X we need to provide // the loading with it's own bundle path location Ogre::ResourceGroupManager::getSingleton().addResourceLocation( Ogre::String(macBundlePath() + "/" + archName), typeName, secName); #else Ogre::ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); #endif } } // Initialise, parse scripts etc Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); }
void InitializeOgreBase( const Ogre::String& name ) { Ogre::LogManager* log_manager = new Ogre::LogManager(); log_manager->createLog( "q-gears.log", true, true ); log_manager->getDefaultLog()->setLogDetail( ( Ogre::LoggingLevel )3 ); Ogre::String ressource_cfg(""); Ogre::String plugins_cfg(""); Ogre::String dyn_lib_ext(""); Ogre::String render_system(""); #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32 dyn_lib_ext = ".dll"; #else // Assume Linux for now dyn_lib_ext = ".so"; #endif #ifdef NDEBUG ressource_cfg = "resources.cfg"; plugins_cfg = "plugins.cfg"; render_system = "./RenderSystem_GL" + dyn_lib_ext; #else ressource_cfg = "resources_d.cfg"; plugins_cfg = "plugins_d.cfg"; render_system = "./RenderSystem_GL_d" + dyn_lib_ext; #endif // init root early root = new Ogre::Root( plugins_cfg ); // set up resources // Load resource paths from config file Ogre::ConfigFile cf; cf.load( ressource_cfg ); // Go through all sections & settings in the file Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); Ogre::String secName, typeName, archName; Ogre::ResourceGroupManager &res_gm( Ogre::ResourceGroupManager::getSingleton() ); while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; res_gm.addResourceLocation( archName, typeName, secName, true ); } } // configure // Show the configuration dialog and initialise the system // You can skip this and use root.restoreConfig() to load configuration // settings if you were sure there are valid ones saved in ogre.cfg if( !root->restoreConfig() && !root->showConfigDialog() ) { root->setRenderSystem( root->getAvailableRenderers()[ 0 ] ); } root->initialise( false ); Ogre::NameValuePairList misc; misc[ "title" ] = name; window = root->createRenderWindow( "QGearsWindow", 800, 600, false, &misc ); // initialize resource Ogre::ResourceGroupManager::getSingleton().addResourceLocation( "./", "FileSystem", "General" ); Ogre::ResourceGroupManager::getSingleton().addResourceLocation( "./exported", "FileSystem", "General" ); Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); Ogre::SceneManager* scene_manager; Ogre::Viewport* viewport; Ogre::FontManager* fmgr = new Ogre::FontManager; Ogre::OverlayManager* overlay = new Ogre::OverlayManager(); frame_listener = new DisplayFrameListener( window ); root->addFrameListener( frame_listener ); scene_manager = root->createSceneManager( Ogre::ST_GENERIC, "Scene" ); scene_manager->clearScene(); scene_manager->setAmbientLight( Ogre::ColourValue( 0.5, 0.5, 0.5 ) ); Ogre::Light* directionalLight = scene_manager->createLight("directionalLight"); directionalLight->setType( Ogre::Light::LT_DIRECTIONAL ); directionalLight->setDiffuseColour( Ogre::ColourValue( 0.5, 0.5, 0.5) ); directionalLight->setSpecularColour( Ogre::ColourValue( 0.5, 0.5, 0.5) ); directionalLight->setDirection( Ogre::Vector3( 0, 0, -1 ) ); camera = scene_manager->createCamera( "Camera" ); camera->setNearClipDistance( 0.01f ); camera->setPosition( 0, 5, 10 ); camera->lookAt( 0, 0, 0 ); viewport = window->addViewport( camera ); viewport->setBackgroundColour( Ogre::ColourValue( 0.0f, 0.4f, 0.0f ) ); camera->setAspectRatio( Ogre::Real( viewport->getActualWidth() ) / Ogre::Real( viewport->getActualHeight() ) ); LOGGER = new Logger( "game.log" ); }
bool OgreFramework::initOgre(Ogre::String wndTitle, OIS::KeyListener *pKeyListener, OIS::MouseListener *pMouseListener) { // PTR TuanNA [Create and initiate the Log- 10/7/2016] Ogre::LogManager* logMgr = new Ogre::LogManager(); m_pLog = Ogre::LogManager::getSingleton().createLog("OgreLogfile.log", true, true, false); m_pLog->setDebugOutputEnabled(true); // PTR TuanNA [Create an Ogre Root- 10/7/2016] m_pRoot = new Ogre::Root(); //PTR TuanNA begin comment //[Add icon to app- 10/7/2016] if(m_pRoot->showConfigDialog()) { // If returned true, user clicked OK so initialise // Here we choose to let the system create a default rendering window by passing 'true' m_pRenderWnd = m_pRoot->initialise(true, "OgreFramework Render Window"); // Let's add a nice window icon #if OGRE_PLATFORM == OGRE_PLATFORM_WIN32 HWND hwnd; m_pRenderWnd->getCustomAttribute("WINDOW", (void*)&hwnd); LONG iconID = (LONG)LoadIcon( GetModuleHandle(0), MAKEINTRESOURCE(IDI_APPICON) ); SetClassLong( hwnd, GCL_HICON, iconID ); #endif //PTR TuanNA end comment // PTR TuanNA [Remove CM m_pRenderWnd- 10/7/2016] m_pRenderWnd = m_pRoot->initialise(true, wndTitle); // PTR TuanNA [Add a viewport the to Render window- 11/7/2016] m_pViewport = m_pRenderWnd->addViewport(0); m_pViewport->setBackgroundColour(ColourValue(0.5f, 0.5f, 0.5f, 1.0f)); m_pViewport->setCamera(0); //PTR TuanNA- Init Ogre Render Window... [16:37:20 4/9/2016 by TNA] size_t hWnd = 0; OIS::ParamList paramList; m_pRenderWnd->getCustomAttribute("WINDOW", &hWnd); paramList.insert(OIS::ParamList::value_type("WINDOW", Ogre::StringConverter::toString(hWnd))); // PTR TuanNA [Create Input System- 11/7/2016] m_pInputMgr = OIS::InputManager::createInputSystem(paramList); m_pKeyboard = static_cast<OIS::Keyboard*>(m_pInputMgr->createInputObject(OIS::OISKeyboard, true)); m_pMouse = static_cast<OIS::Mouse*>(m_pInputMgr->createInputObject(OIS::OISMouse, true)); m_pMouse->getMouseState().height = m_pRenderWnd->getHeight(); m_pMouse->getMouseState().width = m_pRenderWnd->getWidth(); if(pKeyListener == 0) m_pKeyboard->setEventCallback(this); else m_pKeyboard->setEventCallback(pKeyListener); if(pMouseListener == 0) m_pMouse->setEventCallback(this); else m_pMouse->setEventCallback(pMouseListener); Ogre::String secName, typeName, archName; Ogre::ConfigFile cf; #ifdef _DEBUG cf.load("resources_d.cfg"); #else cf.load("resources.cfg"); #endif Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); } } // PTR TuanNA [Configure the amount of MipMaps per texture(to avoid aliasing).- 11/7/2016] Ogre::TextureManager::getSingleton().setDefaultNumMipmaps(5); Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); /* //PTR TuanNA begin comment ////Load cursor resources Ogre::ResourceGroupManager::getSingleton().createResourceGroup("Cursor"); Ogre::ResourceGroupManager::getSingleton().addResourceLocation("../Media/Cursor.zip","Zip","Cursor"); Ogre::ResourceGroupManager::getSingleton().initialiseResourceGroup("Cursor"); //Create the GUI handler mpGui = new GuiHandler(mpRenderWnd); #ifdef DEBUG loadDebugResources(); mpGui->initDebugGui(); #endif //Link the log to the Settings singleton Settings::getSingletonPtr()->setLog(mpLog); //Initiate the sound. mpSound = new SoundManager(); //[16:43:54 4/9/2016 by TNA] //PTR TuanNA end comment */ m_pTrayMgr = new OgreBites::SdkTrayManager("AOFTrayMgr", m_pRenderWnd, m_pMouse, 0); // PTR TuanNA [Initiate the Timer- 11/7/2016] m_pTimer = new Ogre::Timer(); m_pTimer->reset(); m_pRenderWnd->setActive(true); return true; } else { return false; } }
bool OgreFramework::initOgre(Ogre::String wndTitle, OIS::KeyListener *pKeyListener, OIS::MouseListener *pMouseListener) { Ogre::LogManager* logMgr = new Ogre::LogManager(); m_pLog = Ogre::LogManager::getSingleton().createLog("OgreLogfile.log", true, true, false); m_pLog->setDebugOutputEnabled(true); m_pRoot = new Ogre::Root(); if(!m_pRoot->showConfigDialog()) return false; m_pRenderWnd = m_pRoot->initialise(true, wndTitle); m_pViewport = m_pRenderWnd->addViewport(0); m_pViewport->setBackgroundColour(ColourValue(0.5f, 0.5f, 0.5f, 1.0f)); m_pViewport->setCamera(0); size_t hWnd = 0; OIS::ParamList paramList; m_pRenderWnd->getCustomAttribute("WINDOW", &hWnd); paramList.insert(OIS::ParamList::value_type("WINDOW", Ogre::StringConverter::toString(hWnd))); m_pInputMgr = OIS::InputManager::createInputSystem(paramList); m_pKeyboard = static_cast<OIS::Keyboard*>(m_pInputMgr->createInputObject(OIS::OISKeyboard, true)); m_pMouse = static_cast<OIS::Mouse*>(m_pInputMgr->createInputObject(OIS::OISMouse, true)); m_pMouse->getMouseState().height = m_pRenderWnd->getHeight(); m_pMouse->getMouseState().width = m_pRenderWnd->getWidth(); if(pKeyListener == 0) m_pKeyboard->setEventCallback(this); else m_pKeyboard->setEventCallback(pKeyListener); if(pMouseListener == 0) m_pMouse->setEventCallback(this); else m_pMouse->setEventCallback(pMouseListener); Ogre::String secName, typeName, archName; Ogre::ConfigFile cf; cf.load("resources.cfg"); Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); } } Ogre::TextureManager::getSingleton().setDefaultNumMipmaps(5); Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); m_pTrayMgr = new OgreBites::SdkTrayManager("AOFTrayMgr", m_pRenderWnd, m_pMouse, 0); m_pTimer = new Ogre::Timer(); m_pTimer->reset(); m_pRenderWnd->setActive(true); return true; }
bool BasicWindow::go(void) { // 1. define the root object: mRoot = new Ogre::Root(mPluginsFileName); // 2. define the resources that ogre will use: Ogre::ConfigFile configFile; configFile.load(mResourcesFileName); Ogre::ConfigFile::SectionIterator sectionsIter = configFile.getSectionIterator(); Ogre::ConfigFile::SettingsMultiMap::iterator settingsIter; Ogre::ConfigFile::SettingsMultiMap* settings; Ogre::String secName, typeName, archName; while(sectionsIter.hasMoreElements()) { secName = sectionsIter.peekNextKey(); settings = sectionsIter.getNext(); for (settingsIter=settings->begin(); settingsIter!=settings->end(); ++settingsIter) { typeName = settingsIter->first; archName = settingsIter->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); } } // 3. choose and setup the render system: if (!(mRoot->restoreConfig() || mRoot->showConfigDialog())) { return false; } // 4. create the render window: mWindow = mRoot->initialise(true, "Testing"); // 5. initialise the required resources: Ogre::TextureManager::getSingleton().setDefaultNumMipmaps(5); Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); // 6. setup scene: mSceneMgr = mRoot->createSceneManager("DefaultSceneManager"); mCamera = mSceneMgr->createCamera("mCamera"); mCamera->setNearClipDistance(1); //mCamera->setFarClipDistance(10000); mCameraMan = new OgreBites::SdkCameraMan(mCamera); Ogre::Viewport* vp = mWindow->addViewport(mCamera); //vp->setBackgroundColour(Ogre::ColourValue(1, 1, 1)); mCamera->setAspectRatio(Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight())); mCameraNode = mSceneMgr->getRootSceneNode()->createChildSceneNode("cameraNode"); mCameraNode->attachObject(mCamera); createGUI(); createScene(); // 7. setup 3rd party libraries and plugins: Utils::log("*** Initialising OIS ***"); OIS::ParamList paramList; size_t windowHandle = 0; std::ostringstream windowHandleString; mWindow->getCustomAttribute("WINDOW", &windowHandle); windowHandleString << windowHandle; paramList.insert(std::make_pair(std::string("WINDOW"), windowHandleString.str())); mInputManager = OIS::InputManager::createInputSystem(paramList); mKeyboard = static_cast<OIS::Keyboard*>(mInputManager->createInputObject(OIS::OISKeyboard, true)); mMouse = static_cast<OIS::Mouse*>(mInputManager->createInputObject(OIS::OISMouse, true)); windowResized(mWindow); //<- sets mouse clipping size // 8. add listeners and callbacks: Ogre::WindowEventUtilities::addWindowEventListener(mWindow, this); mRoot->addFrameListener(this); mMouse->setEventCallback(this); mKeyboard->setEventCallback(this); // 9. start the render loop mRoot->startRendering(); return true; }
bool AppDemarrage::start(const Ogre::String& pluginFile, const Ogre::String& ogreFile, const Ogre::String& logFile, const Ogre::String& resourceFile) { mRoot = OGRE_NEW Ogre::Root(pluginFile, ogreFile, logFile); Ogre::ConfigFile configFile; configFile.load(resourceFile); Ogre::ConfigFile::SectionIterator seci = configFile.getSectionIterator(); Ogre::String secName, typeName, archName; while (seci.hasMoreElements()) { secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; if(secName == "TileResourceID") { resourceIdMapper[Ogre::StringConverter::parseInt(typeName)] = archName; }else { Ogre::ResourceGroupManager::getSingleton().addResourceLocation( archName, typeName, secName); } } } //if(!(mRoot->restoreConfig() || mRoot->showConfigDialog())) if(!mRoot->showConfigDialog()) { return false; } mWindow = mRoot->initialise(true, APP_WIN_NAME); Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); mSceneMgr = mRoot->createSceneManager("DefaultSceneManager", "Mon Scene Manager"); mSceneMgr->setAmbientLight(Ogre::ColourValue(0.0f, 0.0f, 0.0f)); mSceneMgr->setShadowTechnique(Ogre::SHADOWTYPE_STENCIL_ADDITIVE); // Ogre::Light* pointLight = mSceneMgr->createLight("pointLight"); // pointLight->setType(Ogre::Light::LT_POINT); // pointLight->setPosition(Ogre::Vector3(10*1.5f, 1*1.5f, 10*1.5f)); // pointLight->setDiffuseColour(0.7, 0.7, 0.7); // pointLight->setSpecularColour(0.7, 0.7, 0.7); mCamera = mSceneMgr->createCamera(APP_MAIN_CAM_NAME); #define MYTILESIZE 1.5f mCamera->setPosition(5*MYTILESIZE,8,10*MYTILESIZE); //mCamera->setDirection(Ogre::Vector3::) //mCamera->setOrientation(); mCamera->lookAt(5*MYTILESIZE,0,10*MYTILESIZE); mCamera->setDirection(0,0,0); mCamera->setProjectionType(Ogre::PT_ORTHOGRAPHIC); mCamera->setNearClipDistance(0.5); mCamera->setFarClipDistance(15); mCamera->setOrthoWindow(20 * MYTILESIZE, 20 * MYTILESIZE / 2.7f); //mCamera->setOrthoWindow(15.f, 6.f);//50 * 20 Ogre::Viewport* vp = mWindow->addViewport(mCamera); vp->setBackgroundColour(Ogre::ColourValue(0,0,0)); //mCamera->setAspectRatio(Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight())); //mCamera->setAspectRatio(Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight())); std::cout << "vp->getActualWidth(): " << vp->getActualWidth() << "\n"; std::cout << "vp->getActualHeight(): " << vp->getActualHeight() << std::endl; //mCamera->setOrthoWindow(Ogre::Real(vp->getActualWidth()), Ogre::Real(vp->getActualHeight())); //mCamera->setPolygonMode(Ogre::PM_WIREFRAME); //m_battleground = new Battleground("plop", mSceneMgr, &resourceIdMapper); //m_battleground->load("battlegnd.png"); //m_battleground Battleground(const xml_node &xmlBattlefieldNode, Ogre::SceneManager* mSceneMgr, std::map<int, Ogre::String>* resourceIdMapper); mFrameListener= new InputListener(mSceneMgr, &resourceIdMapper, m_battleground); mRoot->addFrameListener(mFrameListener); mWindow->setDeactivateOnFocusChange(false); while(true) { Ogre::WindowEventUtilities::messagePump(); if(mWindow->isClosed()) { return false; } if(!mRoot->renderOneFrame()) { return false; } } return true; }
// This function will set up everything required by Ogre // and it will ask the user for display settings // At the end of this function Ogre is ready to render. // This function is mostly taken from tutorials and sample programs. int CUIMain::SetupOgre(void) { //================= //Ogre defaultly logs to console // To prevent this the LogManager has to be created // before the Root object. //================= Ogre::LogManager* logMgr = OGRE_NEW Ogre::LogManager; logMgr->createLog("Ogre.log", true, false, false); //================= //Create the Ogre root object // It's possible to specify as parameters the paths to the: // plugin file (what render systems it has to load), config file (screen resolution etc) and log file //================= if( !mRoot ) mRoot = OGRE_NEW Ogre::Root(); //================= // Tell Ogre where all the needed resources are (rendersystems and so on) //================= Ogre::ConfigFile cf; cf.load("resources.cfg"); Ogre::String secName, typeName, archName; Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); while (seci.hasMoreElements()){ secName = seci.peekNextKey(); Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); Ogre::ConfigFile::SettingsMultiMap::iterator i; for (i = settings->begin(); i != settings->end(); ++i) { typeName = i->first; archName = i->second; Ogre::ResourceGroupManager::getSingleton().addResourceLocation(archName, typeName, secName); } } //================= // Set up the render system. // Ogre will ask the user for display settings //================= if( !mRoot->showConfigDialog() ) return 0; //The user probably clicked cancel mWindow = mRoot->initialise(true, "NNYv3"); //================= // Load all the resources. For now, just load all resources at once. The following is from a tutorial: // In a very large game or application, we may have hundreds or even thousands of resources // that our game uses - everything from meshes to textures to scripts. At any given time though, // we probably will only be using a small subset of these resources. To keep down memory requirements, // we can load only the resources that our application is using. We do this by dividing the resources // into sections and only initializing them as we go. //================= Ogre::TextureManager::getSingleton().setDefaultNumMipmaps(5); Ogre::ResourceGroupManager::getSingleton().initialiseAllResourceGroups(); //================= // Preparing the scene //================= mSceneMgr = mRoot->createSceneManager(Ogre::ST_EXTERIOR_CLOSE); //ST_EXTERIOR_CLOSE allows rendering terrain mCamera.Initialize(mSceneMgr); Ogre::Viewport* vp = mWindow->addViewport(mCamera.GetCamera()); vp->setBackgroundColour(Ogre::ColourValue(0.9,0.9,0.9)); //Fog will not work with sky ;) //mSceneMgr->setFog(Ogre::FOG_LINEAR, Ogre::ColourValue(0.9,0.9,0.9), 0.0, 50, 500); mCamera.GetCamera()->setAspectRatio(Ogre::Real(vp->getActualWidth()) / Ogre::Real(vp->getActualHeight())); //Set a moving cloud texture as background mSceneMgr->setSkyDome(true, "CloudySky", 5, 8); //Get a RaySceneQuery object. A SceneQuery object is a class that can query all //objects in a region or scene. RaySceneQuery has it as a base class. RaySceneQuery //can get all objects that intersect a ray. mQueryMouseMovement = mSceneMgr->createRayQuery(Ogre::Ray(), QUERY_MASK_MOUSE_MOVEMENT); mQueryMouseSelection = mSceneMgr->createRayQuery(Ogre::Ray(), QUERY_MASK_MOUSE_SELECTING); LoadWorld(); //================= // Set up the CEGUI system //================= mGUIHandler = new CGUIHandler(mWindow, mSceneMgr); //================= // Create the input handler //================= mInputHandler = new CInputHandler(mWorld, mCamera, mWindow, mSceneMgr); mRoot->addFrameListener(mInputHandler); mRoot->addFrameListener(this); //================= // Create the console overlay //================= mConsoleOverlay = new ConsoleOverlay(); return 1; }