From 4e69e7cc0f0271f3185953683efd9201252ddc24 Mon Sep 17 00:00:00 2001 From: scrawl Date: Wed, 1 Apr 2015 17:02:15 +0200 Subject: [PATCH] OpenMW compiles and runs w/o render window --- CMakeLists.txt | 8 +- apps/openmw/CMakeLists.txt | 30 +- apps/openmw/engine.cpp | 66 +- apps/openmw/engine.hpp | 2 +- apps/openmw/mwclass/creature.cpp | 8 +- apps/openmw/mwclass/npc.cpp | 8 +- apps/openmw/mwgui/birth.cpp | 2 +- apps/openmw/mwgui/cursor.cpp | 2 - apps/openmw/mwgui/formatting.cpp | 5 +- apps/openmw/mwgui/hud.cpp | 2 +- apps/openmw/mwgui/inventorywindow.cpp | 13 +- apps/openmw/mwgui/itemwidget.cpp | 2 +- apps/openmw/mwgui/mapwindow.cpp | 27 +- apps/openmw/mwgui/mapwindow.hpp | 2 +- apps/openmw/mwgui/quickkeysmenu.cpp | 2 +- apps/openmw/mwgui/race.cpp | 29 +- apps/openmw/mwgui/race.hpp | 2 +- apps/openmw/mwgui/savegamedialog.cpp | 3 +- apps/openmw/mwgui/spellcreationdialog.cpp | 2 +- apps/openmw/mwgui/spellicons.cpp | 2 +- apps/openmw/mwgui/tooltips.cpp | 6 +- apps/openmw/mwgui/videowidget.cpp | 22 +- apps/openmw/mwgui/videowidget.hpp | 2 +- apps/openmw/mwgui/widgets.cpp | 2 +- apps/openmw/mwgui/windowmanagerimp.cpp | 66 +- apps/openmw/mwmechanics/actor.cpp | 8 +- apps/openmw/mwmechanics/aicombat.cpp | 10 +- apps/openmw/mwmechanics/alchemy.cpp | 1 + .../mwmechanics/mechanicsmanagerimp.cpp | 72 +- .../mwmechanics/mechanicsmanagerimp.hpp | 8 +- apps/openmw/mwmechanics/spellcasting.cpp | 16 +- apps/openmw/mwmechanics/summoning.cpp | 6 +- apps/openmw/mwrender/actors.cpp | 50 +- apps/openmw/mwrender/actors.hpp | 31 +- apps/openmw/mwrender/objects.cpp | 108 +-- apps/openmw/mwrender/objects.hpp | 1 - apps/openmw/mwrender/renderingmanager.cpp | 36 +- apps/openmw/mwrender/renderingmanager.hpp | 7 - apps/openmw/mwscript/interpretercontext.cpp | 2 + apps/openmw/mwsound/soundmanagerimp.cpp | 3 + apps/openmw/mwworld/physicssystem.cpp | 28 +- apps/openmw/mwworld/scene.cpp | 57 +- apps/openmw/mwworld/scene.hpp | 9 +- apps/openmw/mwworld/weather.cpp | 2 +- apps/openmw/mwworld/worldimp.cpp | 259 ++++---- apps/openmw/mwworld/worldimp.hpp | 22 +- cmake/FindMyGUI.cmake | 10 +- components/CMakeLists.txt | 4 - components/esm/esmreader.cpp | 3 +- components/esm/esmreader.hpp | 5 + components/fontloader/fontloader.cpp | 2 + components/nifoverrides/nifoverrides.cpp | 80 --- components/nifoverrides/nifoverrides.hpp | 38 -- files/transparency-overrides.cfg | 623 ------------------ libs/openengine/CMakeLists.txt | 4 +- 55 files changed, 534 insertions(+), 1286 deletions(-) delete mode 100644 components/nifoverrides/nifoverrides.cpp delete mode 100644 components/nifoverrides/nifoverrides.hpp delete mode 100644 files/transparency-overrides.cfg diff --git a/CMakeLists.txt b/CMakeLists.txt index cde53f27a..bf525646d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -328,9 +328,6 @@ endif (APPLE) configure_file(${OpenMW_SOURCE_DIR}/files/settings-default.cfg "${OpenMW_BINARY_DIR}/settings-default.cfg") -configure_file(${OpenMW_SOURCE_DIR}/files/transparency-overrides.cfg - "${OpenMW_BINARY_DIR}/transparency-overrides.cfg") - configure_file(${OpenMW_SOURCE_DIR}/files/openmw.cfg.local "${OpenMW_BINARY_DIR}/openmw.cfg") @@ -433,7 +430,6 @@ IF(NOT WIN32 AND NOT APPLE) # Install global configuration files INSTALL(FILES "${OpenMW_BINARY_DIR}/settings-default.cfg" DESTINATION "${SYSCONFDIR}" COMPONENT "openmw") - INSTALL(FILES "${OpenMW_BINARY_DIR}/transparency-overrides.cfg" DESTINATION "${SYSCONFDIR}" COMPONENT "openmw") INSTALL(FILES "${OpenMW_BINARY_DIR}/openmw.cfg.install" DESTINATION "${SYSCONFDIR}" RENAME "openmw.cfg" COMPONENT "openmw") INSTALL(FILES "${OpenMW_BINARY_DIR}/gamecontrollerdb.txt" DESTINATION "${SYSCONFDIR}" COMPONENT "openmw") @@ -456,7 +452,6 @@ if(WIN32) "${OpenMW_SOURCE_DIR}/Docs/license/GPL3.txt" "${OpenMW_SOURCE_DIR}/Docs/license/DejaVu Font License.txt" "${OpenMW_BINARY_DIR}/settings-default.cfg" - "${OpenMW_BINARY_DIR}/transparency-overrides.cfg" "${OpenMW_BINARY_DIR}/gamecontrollerdb.txt" "${OpenMW_BINARY_DIR}/Release/openmw.exe" DESTINATION ".") @@ -549,7 +544,7 @@ add_subdirectory(libs/openengine) # Extern #add_subdirectory (extern/shiny) #add_subdirectory (extern/ogre-ffmpeg-videoplayer) -#add_subdirectory (extern/oics) +add_subdirectory (extern/oics) #add_subdirectory (extern/sdl4ogre) # Components @@ -714,7 +709,6 @@ if (APPLE) install(FILES "${OpenMW_BINARY_DIR}/openmw.cfg.install" RENAME "openmw.cfg" DESTINATION "${INSTALL_SUBDIR}" COMPONENT Runtime) install(FILES "${OpenMW_BINARY_DIR}/settings-default.cfg" DESTINATION "${INSTALL_SUBDIR}" COMPONENT Runtime) install(FILES "${OpenMW_BINARY_DIR}/gamecontrollerdb.txt" DESTINATION "${INSTALL_SUBDIR}" COMPONENT Runtime) - install(FILES "${OpenMW_BINARY_DIR}/transparency-overrides.cfg" DESTINATION "${INSTALL_SUBDIR}" COMPONENT Runtime) install(FILES "${OpenMW_BINARY_DIR}/opencs.ini" DESTINATION "${INSTALL_SUBDIR}" COMPONENT Runtime) set(CPACK_GENERATOR "DragNDrop") diff --git a/apps/openmw/CMakeLists.txt b/apps/openmw/CMakeLists.txt index a183d172d..56ee82d7d 100644 --- a/apps/openmw/CMakeLists.txt +++ b/apps/openmw/CMakeLists.txt @@ -20,15 +20,16 @@ set(GAME_HEADER source_group(game FILES ${GAME} ${GAME_HEADER}) add_openmw_dir (mwrender - renderingmanager debugging sky camera animation npcanimation creatureanimation activatoranimation - actors objects renderinginterface localmap occlusionquery water shadows - characterpreview globalmap ripplesimulation refraction - terrainstorage renderconst effectmanager weaponanimation +actors objects +# renderingmanager debugging sky camera animation npcanimation creatureanimation activatoranimation +# renderinginterface localmap occlusionquery water shadows +# characterpreview globalmap ripplesimulation refraction +# terrainstorage renderconst effectmanager weaponanimation ) -add_openmw_dir (mwinput - inputmanagerimp - ) +#add_openmw_dir (mwinput +# inputmanagerimp +# ) add_openmw_dir (mwgui textinput widgets race class birth review windowmanagerimp console dialogue @@ -57,16 +58,18 @@ add_openmw_dir (mwscript ) add_openmw_dir (mwsound - soundmanagerimp openal_output ffmpeg_decoder sound sound_decoder sound_output loudness libavwrapper movieaudiofactory + soundmanagerimp openal_output ffmpeg_decoder sound sound_decoder sound_output loudness libavwrapper +# movieaudiofactory ) add_openmw_dir (mwworld - refdata worldimp physicssystem scene globals class action nullaction actionteleport + refdata worldimp scene globals class action nullaction actionteleport containerstore actiontalk actiontake manualref player cellfunctors failedaction - cells localscripts customdata weather inventorystore ptr actionopen actionread + cells localscripts customdata inventorystore ptr actionopen actionread actionequip timestamp actionalchemy cellstore actionapply actioneat esmstore store recordcmp fallback actionrepair actionsoulgem livecellref actiondoor - contentloader esmloader actiontrap cellreflist projectilemanager cellref + contentloader esmloader actiontrap cellreflist cellref physicssystem +# weather projectilemanager ) add_openmw_dir (mwclass @@ -75,10 +78,11 @@ add_openmw_dir (mwclass ) add_openmw_dir (mwmechanics - mechanicsmanagerimp stat character creaturestats magiceffects movement actors objects + mechanicsmanagerimp stat creaturestats magiceffects movement drawstate spells activespells npcstats aipackage aisequence aipursue alchemy aiwander aitravel aifollow aiavoiddoor aiescort aiactivate aicombat repair enchanting pathfinding pathgrid security spellsuccess spellcasting disease pickpocket levelledlist combat steering obstacle autocalcspell difficultyscaling aicombataction actor summoning +# character actors objects ) add_openmw_dir (mwstate @@ -133,9 +137,7 @@ target_link_libraries(openmw ${MYGUI_LIBRARIES} ${SDL2_LIBRARY} ${MYGUI_PLATFORM_LIBRARIES} - "ogre-ffmpeg-videoplayer" "oics" - "sdl4ogre" components ) diff --git a/apps/openmw/engine.cpp b/apps/openmw/engine.cpp index a4bb8c538..c7a92e52e 100644 --- a/apps/openmw/engine.cpp +++ b/apps/openmw/engine.cpp @@ -14,17 +14,14 @@ #include -#include #include #include -#include #include -#include #include -#include "mwinput/inputmanagerimp.hpp" +//#include "mwinput/inputmanagerimp.hpp" #include "mwgui/windowmanagerimp.hpp" @@ -86,12 +83,12 @@ bool OMW::Engine::frameRenderingQueued (const Ogre::FrameEvent& evt) mEnvironment.setFrameDuration (frametime); // update input - MWBase::Environment::get().getInputManager()->update(frametime, false); + //MWBase::Environment::get().getInputManager()->update(frametime, false); // When the window is minimized, pause everything. Currently this *has* to be here to work around a MyGUI bug. // If we are not currently rendering, then RenderItems will not be reused resulting in a memory leak upon changing widget textures. - if (!mOgre->getWindow()->isActive() || !mOgre->getWindow()->isVisible()) - return true; + //if (!mOgre->getWindow()->isActive() || !mOgre->getWindow()->isVisible()) + // return true; // sound if (mUseSound) @@ -157,11 +154,12 @@ bool OMW::Engine::frameRenderingQueued (const Ogre::FrameEvent& evt) if (MWBase::Environment::get().getStateManager()->getState()!= MWBase::StateManager::State_NoGame) { +#if 0 Ogre::RenderWindow* window = mOgre->getWindow(); unsigned int tri, batch; MWBase::Environment::get().getWorld()->getTriangleBatchCount(tri, batch); MWBase::Environment::get().getWindowManager()->wmUpdateFps(window->getLastFPS(), tri, batch); - +#endif MWBase::Environment::get().getWindowManager()->update(); } } @@ -210,11 +208,8 @@ OMW::Engine::Engine(Files::ConfigurationManager& configurationManager) OMW::Engine::~Engine() { - if (mOgre) - mOgre->restoreWindowGammaRamp(); mEnvironment.cleanup(); delete mScriptContext; - delete mOgre; SDL_Quit(); } @@ -223,14 +218,10 @@ OMW::Engine::~Engine() void OMW::Engine::addResourcesDirectory (const boost::filesystem::path& path) { - mOgre->getRoot()->addResourceLocation (path.string(), "FileSystem", - Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME, true); } void OMW::Engine::addZipResource (const boost::filesystem::path& path) { - mOgre->getRoot()->addResourceLocation (path.string(), "Zip", - Ogre::ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME, false); } void OMW::Engine::enableFSStrict(bool fsStrict) @@ -299,19 +290,6 @@ std::string OMW::Engine::loadSettings (Settings::Manager & settings) if (boost::filesystem::exists(settingspath)) settings.loadUser(settingspath); - // load nif overrides - NifOverrides::Overrides nifOverrides; - std::string transparencyOverrides = "/transparency-overrides.cfg"; - std::string materialOverrides = "/material-overrides.cfg"; - if (boost::filesystem::exists(mCfgMgr.getLocalPath().string() + transparencyOverrides)) - nifOverrides.loadTransparencyOverrides(mCfgMgr.getLocalPath().string() + transparencyOverrides); - else if (boost::filesystem::exists(mCfgMgr.getGlobalPath().string() + transparencyOverrides)) - nifOverrides.loadTransparencyOverrides(mCfgMgr.getGlobalPath().string() + transparencyOverrides); - if (boost::filesystem::exists(mCfgMgr.getLocalPath().string() + materialOverrides)) - nifOverrides.loadMaterialOverrides(mCfgMgr.getLocalPath().string() + materialOverrides); - else if (boost::filesystem::exists(mCfgMgr.getGlobalPath().string() + materialOverrides)) - nifOverrides.loadMaterialOverrides(mCfgMgr.getGlobalPath().string() + materialOverrides); - return settingspath; } @@ -330,13 +308,6 @@ void OMW::Engine::prepareEngine (Settings::Manager & settings) #endif } - mOgre = new OEngine::Render::OgreRenderer; - - mOgre->configure( - mCfgMgr.getLogPath().string(), - renderSystem, - Settings::Manager::getString("opengl rtt mode", "Video")); - // This has to be added BEFORE MyGUI is initialized, as it needs // to find core.xml here. @@ -361,9 +332,7 @@ void OMW::Engine::prepareEngine (Settings::Manager & settings) SDL_SetHint(SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS, settings.getBool("minimize on focus loss", "Video") ? "1" : "0"); - mOgre->createWindow("OpenMW", windowSettings); - - Bsa::registerResources (mFileCollections, mArchives, true, mFSStrict); + //Bsa::registerResources (mFileCollections, mArchives, true, mFSStrict); // Create input and UI first to set up a bootstrapping environment for // showing a loading screen and keeping the window responsive while doing so @@ -390,19 +359,17 @@ void OMW::Engine::prepareEngine (Settings::Manager & settings) else gameControllerdb = ""; //if it doesn't exist, pass in an empty string - MWInput::InputManager* input = new MWInput::InputManager (*mOgre, *this, keybinderUser, keybinderUserExists, gameControllerdb, mGrab); - mEnvironment.setInputManager (input); + //MWInput::InputManager* input = new MWInput::InputManager (*mOgre, *this, keybinderUser, keybinderUserExists, gameControllerdb, mGrab); + //mEnvironment.setInputManager (input); MWGui::WindowManager* window = new MWGui::WindowManager( - mExtensions, mOgre, mCfgMgr.getLogPath().string() + std::string("/"), + mExtensions, NULL, mCfgMgr.getLogPath().string() + std::string("/"), mCfgMgr.getCachePath ().string(), mScriptConsoleMode, mTranslationDataStorage, mEncoding, mExportFonts, mFallbackMap); mEnvironment.setWindowManager (window); // Create sound system mEnvironment.setSoundManager (new MWSound::SoundManager(mUseSound)); - mOgre->setWindowGammaContrast(Settings::Manager::getFloat("gamma", "General"), Settings::Manager::getFloat("contrast", "General")); - if (!mSkipMenu) { std::string logo = mFallbackMap["Movies_Company_Logo"]; @@ -411,11 +378,11 @@ void OMW::Engine::prepareEngine (Settings::Manager & settings) } // Create the world - mEnvironment.setWorld( new MWWorld::World (*mOgre, mFileCollections, mContentFiles, + mEnvironment.setWorld( new MWWorld::World (mFileCollections, mContentFiles, mResDir, mCfgMgr.getCachePath(), mEncoder, mFallbackMap, mActivationDistanceOverride, mCellName, mStartupScript)); MWBase::Environment::get().getWorld()->setupPlayer(); - input->setPlayer(&mEnvironment.getWorld()->getPlayer()); + //input->setPlayer(&mEnvironment.getWorld()->getPlayer()); window->initUI(); window->renderWorldMap(); @@ -443,7 +410,7 @@ void OMW::Engine::prepareEngine (Settings::Manager & settings) mEnvironment.setJournal (new MWDialogue::Journal); mEnvironment.setDialogueManager (new MWDialogue::DialogueManager (mExtensions, mVerboseScripts, mTranslationDataStorage)); - mOgre->getRoot()->addFrameListener (this); + //mOgre->getRoot()->addFrameListener (this); // scripts if (mCompileAll) @@ -473,7 +440,7 @@ void OMW::Engine::prepareEngine (Settings::Manager & settings) void OMW::Engine::go() { assert (!mContentFiles.empty()); - assert (!mOgre); + //assert (!mOgre); Settings::Manager settings; std::string settingspath; @@ -514,6 +481,7 @@ void OMW::Engine::go() } // Start the main rendering loop + /* Ogre::Timer timer; while (!MWBase::Environment::get().getStateManager()->hasQuitRequest()) { @@ -523,6 +491,8 @@ void OMW::Engine::go() timer.reset(); Ogre::Root::getSingleton().renderOneFrame(dt); } + */ + // Save user settings settings.saveUser(settingspath); @@ -577,7 +547,7 @@ void OMW::Engine::screenshot() } while (boost::filesystem::exists(stream.str())); - mOgre->screenshot(stream.str(), format); + //mOgre->screenshot(stream.str(), format); } void OMW::Engine::setCompileAll (bool all) diff --git a/apps/openmw/engine.hpp b/apps/openmw/engine.hpp index 3b088595c..ef26ceb3a 100644 --- a/apps/openmw/engine.hpp +++ b/apps/openmw/engine.hpp @@ -98,7 +98,7 @@ namespace OMW bool mScriptBlacklistUse; bool mNewGame; - Nif::Cache mNifCache; + //Nif::Cache mNifCache; // not implemented Engine (const Engine&); diff --git a/apps/openmw/mwclass/creature.cpp b/apps/openmw/mwclass/creature.cpp index 8404b9523..ac99fa4b4 100644 --- a/apps/openmw/mwclass/creature.cpp +++ b/apps/openmw/mwclass/creature.cpp @@ -163,17 +163,17 @@ namespace MWClass void Creature::insertObjectRendering (const MWWorld::Ptr& ptr, const std::string& model, MWRender::RenderingInterface& renderingInterface) const { - MWWorld::LiveCellRef *ref = ptr.get(); + //MWWorld::LiveCellRef *ref = ptr.get(); - MWRender::Actors& actors = renderingInterface.getActors(); - actors.insertCreature(ptr, model, (ref->mBase->mFlags & ESM::Creature::Weapon) != 0); + //MWRender::Actors& actors = renderingInterface.getActors(); + //actors.insertCreature(ptr, model, (ref->mBase->mFlags & ESM::Creature::Weapon) != 0); } void Creature::insertObject(const MWWorld::Ptr& ptr, const std::string& model, MWWorld::PhysicsSystem& physics) const { if(!model.empty()) { - physics.addActor(ptr, model); + //physics.addActor(ptr, model); if (getCreatureStats(ptr).isDead()) MWBase::Environment::get().getWorld()->enableActorCollision(ptr, false); } diff --git a/apps/openmw/mwclass/npc.cpp b/apps/openmw/mwclass/npc.cpp index 1d58dc87e..3dcb57fbb 100644 --- a/apps/openmw/mwclass/npc.cpp +++ b/apps/openmw/mwclass/npc.cpp @@ -3,8 +3,6 @@ #include -#include - #include #include @@ -1151,9 +1149,9 @@ namespace MWClass if (ptr.getClass().getNpcStats(ptr).isWerewolf() && ptr.getClass().getCreatureStats(ptr).getStance(MWMechanics::CreatureStats::Stance_Run)) { - MWMechanics::WeaponType weaponType = MWMechanics::WeapType_None; - MWMechanics::getActiveWeapon(ptr.getClass().getCreatureStats(ptr), ptr.getClass().getInventoryStore(ptr), &weaponType); - if (weaponType == MWMechanics::WeapType_None) + //MWMechanics::WeaponType weaponType = MWMechanics::WeapType_None; + //MWMechanics::getActiveWeapon(ptr.getClass().getCreatureStats(ptr), ptr.getClass().getInventoryStore(ptr), &weaponType); + //if (weaponType == MWMechanics::WeapType_None) return ""; } diff --git a/apps/openmw/mwgui/birth.cpp b/apps/openmw/mwgui/birth.cpp index 668253712..475428f33 100644 --- a/apps/openmw/mwgui/birth.cpp +++ b/apps/openmw/mwgui/birth.cpp @@ -183,7 +183,7 @@ namespace MWGui const ESM::BirthSign *birth = store.get().find(mCurrentBirthId); - mBirthImage->setImageTexture(Misc::ResourceHelpers::correctTexturePath(birth->mTexture)); + //mBirthImage->setImageTexture(Misc::ResourceHelpers::correctTexturePath(birth->mTexture)); std::vector abilities, powers, spells; diff --git a/apps/openmw/mwgui/cursor.cpp b/apps/openmw/mwgui/cursor.cpp index 9c64f94ca..82e0b9699 100644 --- a/apps/openmw/mwgui/cursor.cpp +++ b/apps/openmw/mwgui/cursor.cpp @@ -5,8 +5,6 @@ #include #include -#include - namespace MWGui { diff --git a/apps/openmw/mwgui/formatting.cpp b/apps/openmw/mwgui/formatting.cpp index 761a89ca6..d96255c85 100644 --- a/apps/openmw/mwgui/formatting.cpp +++ b/apps/openmw/mwgui/formatting.cpp @@ -1,8 +1,5 @@ #include "formatting.hpp" -#include -#include - #include #include #include @@ -466,7 +463,7 @@ namespace MWGui MyGUI::IntCoord(left, pag.getCurrentTop(), width, mImageHeight), MyGUI::Align::Left | MyGUI::Align::Top, parent->getName() + MyGUI::utility::toString(parent->getChildCount())); - std::string image = Misc::ResourceHelpers::correctBookartPath(src, width, mImageHeight); + std::string image;// = Misc::ResourceHelpers::correctBookartPath(src, width, mImageHeight); mImageBox->setImageTexture(image); mImageBox->setProperty("NeedMouse", "false"); } diff --git a/apps/openmw/mwgui/hud.cpp b/apps/openmw/mwgui/hud.cpp index eb458be50..2323d39e7 100644 --- a/apps/openmw/mwgui/hud.cpp +++ b/apps/openmw/mwgui/hud.cpp @@ -448,7 +448,7 @@ namespace MWGui std::string icon = effect->mIcon; int slashPos = icon.rfind('\\'); icon.insert(slashPos+1, "b_"); - icon = Misc::ResourceHelpers::correctIconPath(icon); + //icon = Misc::ResourceHelpers::correctIconPath(icon); mSpellImage->setItem(MWWorld::Ptr()); mSpellImage->setIcon(icon); diff --git a/apps/openmw/mwgui/inventorywindow.cpp b/apps/openmw/mwgui/inventorywindow.cpp index 80b246e84..c3932d388 100644 --- a/apps/openmw/mwgui/inventorywindow.cpp +++ b/apps/openmw/mwgui/inventorywindow.cpp @@ -53,7 +53,9 @@ namespace MWGui , mTrading(false) , mLastXSize(0) , mLastYSize(0) + #if 0 , mPreview(new MWRender::InventoryPreview(MWBase::Environment::get().getWorld ()->getPlayerPtr())) + #endif , mPreviewDirty(true) , mPreviewResize(true) , mDragAndDrop(dragAndDrop) @@ -118,10 +120,10 @@ namespace MWGui MyGUI::ITexture* tex = MyGUI::RenderManager::getInstance().getTexture("CharacterPreview"); if (tex) MyGUI::RenderManager::getInstance().destroyTexture(tex); - +#if 0 mPreview.reset(new MWRender::InventoryPreview(mPtr)); mPreview->setup(); - +#endif mPreviewDirty = true; mPreviewResize = true; } @@ -481,6 +483,8 @@ namespace MWGui MWWorld::Ptr InventoryWindow::getAvatarSelectedItem(int x, int y) { + return MWWorld::Ptr(); +#if 0 int slot = mPreview->getSlotSelected (x, y); if (slot == -1) @@ -499,6 +503,7 @@ namespace MWGui } return MWWorld::Ptr(); +#endif } void InventoryWindow::updateEncumbranceBar() @@ -526,6 +531,7 @@ namespace MWGui void InventoryWindow::doRenderUpdate () { +#if 0 mPreview->onFrame(); if (mPreviewResize || mPreviewDirty) @@ -552,6 +558,7 @@ namespace MWGui mAvatarImage->setImageTexture("CharacterPreview"); } +#endif } void InventoryWindow::notifyContentChanged() @@ -668,6 +675,8 @@ namespace MWGui void InventoryWindow::rebuildAvatar() { +#if 0 mPreview->rebuild(); +#endif } } diff --git a/apps/openmw/mwgui/itemwidget.cpp b/apps/openmw/mwgui/itemwidget.cpp index 36940113e..1da2ab879 100644 --- a/apps/openmw/mwgui/itemwidget.cpp +++ b/apps/openmw/mwgui/itemwidget.cpp @@ -77,7 +77,7 @@ namespace MWGui void ItemWidget::setIcon(const MWWorld::Ptr &ptr) { - setIcon(Misc::ResourceHelpers::correctIconPath(ptr.getClass().getInventoryIcon(ptr))); + //setIcon(Misc::ResourceHelpers::correctIconPath(ptr.getClass().getInventoryIcon(ptr))); } diff --git a/apps/openmw/mwgui/mapwindow.cpp b/apps/openmw/mwgui/mapwindow.cpp index 02e8ffdfe..d65e242de 100644 --- a/apps/openmw/mwgui/mapwindow.cpp +++ b/apps/openmw/mwgui/mapwindow.cpp @@ -212,6 +212,7 @@ namespace MWGui void LocalMapBase::applyFogOfWar() { +#if 0 for (int mx=0; mx<3; ++mx) { for (int my=0; my<3; ++my) @@ -225,6 +226,7 @@ namespace MWGui : ""); } } +#endif redraw(); } @@ -338,6 +340,7 @@ namespace MWGui mDoorMarkerWidgets.clear(); // Update the map textures +#if 0 for (int mx=0; mx<3; ++mx) { for (int my=0; my<3; ++my) @@ -354,7 +357,7 @@ namespace MWGui box->setImageTexture("black.png"); } } - +#endif MWBase::World* world = MWBase::Environment::get().getWorld(); // Retrieve the door markers we want to show @@ -558,7 +561,7 @@ namespace MWGui , LocalMapBase(customMarkers) , mGlobal(false) , mGlobalMap(0) - , mGlobalMapRender(0) + //, mGlobalMapRender(0) , mEditNoteDialog() , mEventBoxGlobal(NULL) , mEventBoxLocal(NULL) @@ -705,18 +708,19 @@ namespace MWGui void MapWindow::renderGlobalMap(Loading::Listener* loadingListener) { +#if 0 mGlobalMapRender = new MWRender::GlobalMap(""); mGlobalMapRender->render(loadingListener); mGlobalMap->setCanvasSize (mGlobalMapRender->getWidth(), mGlobalMapRender->getHeight()); mGlobalMapImage->setSize(mGlobalMapRender->getWidth(), mGlobalMapRender->getHeight()); - mGlobalMapImage->setImageTexture("GlobalMap.png"); mGlobalMapOverlay->setImageTexture("GlobalMapOverlay"); +#endif } MapWindow::~MapWindow() { - delete mGlobalMapRender; + //delete mGlobalMapRender; } void MapWindow::setCellName(const std::string& cellName) @@ -726,6 +730,7 @@ namespace MWGui void MapWindow::addVisitedLocation(const std::string& name, int x, int y) { +#if 0 CellId cell; cell.first = x; cell.second = y; @@ -752,6 +757,7 @@ namespace MWGui markerWidget->eventMouseDrag += MyGUI::newDelegate(this, &MapWindow::onMouseDrag); markerWidget->eventMouseButtonPressed += MyGUI::newDelegate(this, &MapWindow::onDragStart); } +#endif } void MapWindow::cellExplored(int x, int y) @@ -763,10 +769,12 @@ namespace MWGui { LocalMapBase::onFrame(dt); +#if 0 for (std::vector::iterator it = mQueuedToExplore.begin(); it != mQueuedToExplore.end(); ++it) { mGlobalMapRender->exploreCell(it->first, it->second); } +#endif mQueuedToExplore.clear(); NoDrop::onFrame(dt); @@ -823,12 +831,14 @@ namespace MWGui void MapWindow::globalMapUpdatePlayer () { +#if 0 // For interiors, position is set by WindowManager via setGlobalMapPlayerPosition if (MWBase::Environment::get().getWorld ()->isCellExterior ()) { Ogre::Vector3 pos = MWBase::Environment::get().getWorld ()->getPlayerPtr().getRefData ().getBaseNode ()->_getDerivedPosition (); setGlobalMapPlayerPosition(pos.x, pos.y); } +#endif } void MapWindow::notifyPlayerUpdate () @@ -838,6 +848,7 @@ namespace MWGui void MapWindow::setGlobalMapPlayerPosition(float worldX, float worldY) { +#if 0 float x, y; mGlobalMapRender->worldPosToImageSpace (worldX, worldY, x, y); x *= mGlobalMapRender->getWidth(); @@ -849,6 +860,7 @@ namespace MWGui MyGUI::IntSize viewsize = mGlobalMap->getSize(); MyGUI::IntPoint viewoffs(static_cast(viewsize.width * 0.5f - x), static_cast(viewsize.height *0.5 - y)); mGlobalMap->setViewOffset(viewoffs); +#endif } void MapWindow::setGlobalMapPlayerDir(const float x, const float y) @@ -863,7 +875,8 @@ namespace MWGui void MapWindow::clear() { mMarkers.clear(); - mGlobalMapRender->clear(); + + //mGlobalMapRender->clear(); mChanged = true; while (mEventBoxGlobal->getChildCount()) @@ -872,6 +885,7 @@ namespace MWGui void MapWindow::write(ESM::ESMWriter &writer, Loading::Listener& progress) { +#if 0 ESM::GlobalMap map; mGlobalMapRender->write(map); @@ -880,10 +894,12 @@ namespace MWGui writer.startRecord(ESM::REC_GMAP); map.save(writer); writer.endRecord(ESM::REC_GMAP); +#endif } void MapWindow::readRecord(ESM::ESMReader &reader, uint32_t type) { +#if 0 if (type == ESM::REC_GMAP) { ESM::GlobalMap map; @@ -898,6 +914,7 @@ namespace MWGui addVisitedLocation(cell->mName, it->first, it->second); } } +#endif } void MapWindow::setAlpha(float alpha) diff --git a/apps/openmw/mwgui/mapwindow.hpp b/apps/openmw/mwgui/mapwindow.hpp index a80b3e4c5..68d2e28de 100644 --- a/apps/openmw/mwgui/mapwindow.hpp +++ b/apps/openmw/mwgui/mapwindow.hpp @@ -216,7 +216,7 @@ namespace MWGui MyGUI::Button* mEventBoxGlobal; MyGUI::Button* mEventBoxLocal; - MWRender::GlobalMap* mGlobalMapRender; + //MWRender::GlobalMap* mGlobalMapRender; EditNoteDialog mEditNoteDialog; ESM::CustomMarker mEditingMarker; diff --git a/apps/openmw/mwgui/quickkeysmenu.cpp b/apps/openmw/mwgui/quickkeysmenu.cpp index 8f595df80..5c0fd773d 100644 --- a/apps/openmw/mwgui/quickkeysmenu.cpp +++ b/apps/openmw/mwgui/quickkeysmenu.cpp @@ -245,7 +245,7 @@ namespace MWGui std::string path = effect->mIcon; int slashPos = path.rfind('\\'); path.insert(slashPos+1, "b_"); - path = Misc::ResourceHelpers::correctIconPath(path); + //path = Misc::ResourceHelpers::correctIconPath(path); button->setFrame("textures\\menu_icon_select_magic.dds", MyGUI::IntCoord(2, 2, 40, 40)); button->setIcon(path); diff --git a/apps/openmw/mwgui/race.cpp b/apps/openmw/mwgui/race.cpp index f908a9dd0..af4332c7c 100644 --- a/apps/openmw/mwgui/race.cpp +++ b/apps/openmw/mwgui/race.cpp @@ -125,18 +125,19 @@ namespace MWGui updateSkills(); updateSpellPowers(); - mPreview.reset(NULL); + //mPreview.reset(NULL); mPreviewImage->setImageTexture(""); const std::string textureName = "CharacterHeadPreview"; MyGUI::RenderManager::getInstance().destroyTexture(MyGUI::RenderManager::getInstance().getTexture(textureName)); - mPreview.reset(new MWRender::RaceSelectionPreview()); - mPreview->setup(); - mPreview->update (mCurrentAngle); + //mPreview.reset(new MWRender::RaceSelectionPreview()); + //mPreview->setup(); + //mPreview->update (mCurrentAngle); - const ESM::NPC proto = mPreview->getPrototype(); + //const ESM::NPC& proto = mPreview->getPrototype(); + ESM::NPC proto; setRaceId(proto.mRace); recountParts(); @@ -184,7 +185,7 @@ namespace MWGui mPreviewImage->setImageTexture(""); const std::string textureName = "CharacterHeadPreview"; MyGUI::RenderManager::getInstance().destroyTexture(MyGUI::RenderManager::getInstance().getTexture(textureName)); - mPreview.reset(NULL); + //mPreview.reset(NULL); } // widget controls @@ -204,7 +205,7 @@ namespace MWGui void RaceDialog::onHeadRotate(MyGUI::ScrollBar* scroll, size_t _position) { float angle = (float(_position) / (scroll->getScrollRange()-1) - 0.5f) * 3.14f * 2; - mPreview->update (angle); + //mPreview->update (angle); mPreviewDirty = true; mCurrentAngle = angle; } @@ -316,7 +317,7 @@ namespace MWGui void RaceDialog::updatePreview() { - ESM::NPC record = mPreview->getPrototype(); + ESM::NPC record;// = mPreview->getPrototype(); record.mRace = mCurrentRaceId; record.setIsMale(mGenderIndex == 0); @@ -325,7 +326,7 @@ namespace MWGui try { - mPreview->setPrototype(record); + //mPreview->setPrototype(record); } catch (std::exception& e) { @@ -337,13 +338,13 @@ namespace MWGui void RaceDialog::doRenderUpdate() { - if (!mPreview.get()) + //if (!mPreview.get()) return; - mPreview->onFrame(); + //mPreview->onFrame(); if (mPreviewDirty) { - mPreview->render(); + //mPreview->render(); mPreviewDirty = false; } } @@ -450,6 +451,8 @@ namespace MWGui const ESM::NPC& RaceDialog::getResult() const { - return mPreview->getPrototype(); + static ESM::NPC result; + return result; + //return mPreview->getPrototype(); } } diff --git a/apps/openmw/mwgui/race.hpp b/apps/openmw/mwgui/race.hpp index be16af5d1..f188af2b3 100644 --- a/apps/openmw/mwgui/race.hpp +++ b/apps/openmw/mwgui/race.hpp @@ -108,7 +108,7 @@ namespace MWGui float mCurrentAngle; - std::auto_ptr mPreview; + //std::auto_ptr mPreview; bool mPreviewDirty; }; diff --git a/apps/openmw/mwgui/savegamedialog.cpp b/apps/openmw/mwgui/savegamedialog.cpp index d022c8e25..980afdfae 100644 --- a/apps/openmw/mwgui/savegamedialog.cpp +++ b/apps/openmw/mwgui/savegamedialog.cpp @@ -358,7 +358,7 @@ namespace MWGui << " " << hour << " " << (pm ? "#{sSaveMenuHelp05}" : "#{sSaveMenuHelp04}"); mInfoText->setCaptionWithReplacing(text.str()); - +#if 0 // Decode screenshot std::vector data = mCurrentSlot->mProfile.mScreenshot; // MemoryDataStream doesn't work with const data :( Ogre::DataStreamPtr stream(new Ogre::MemoryDataStream(&data[0], data.size())); @@ -382,5 +382,6 @@ namespace MWGui texture->loadImage(image); mScreenshot->setImageTexture(textureName); +#endif } } diff --git a/apps/openmw/mwgui/spellcreationdialog.cpp b/apps/openmw/mwgui/spellcreationdialog.cpp index c744d3ed6..80806941c 100644 --- a/apps/openmw/mwgui/spellcreationdialog.cpp +++ b/apps/openmw/mwgui/spellcreationdialog.cpp @@ -180,7 +180,7 @@ namespace MWGui void EditEffectDialog::setMagicEffect (const ESM::MagicEffect *effect) { - mEffectImage->setImageTexture(Misc::ResourceHelpers::correctIconPath(effect->mIcon)); + //mEffectImage->setImageTexture(Misc::ResourceHelpers::correctIconPath(effect->mIcon)); mEffectName->setCaptionWithReplacing("#{"+ESM::MagicEffect::effectIdToString (effect->mIndex)+"}"); diff --git a/apps/openmw/mwgui/spellicons.cpp b/apps/openmw/mwgui/spellicons.cpp index c597cfaeb..8770bab38 100644 --- a/apps/openmw/mwgui/spellicons.cpp +++ b/apps/openmw/mwgui/spellicons.cpp @@ -145,7 +145,7 @@ namespace MWGui ("ImageBox", MyGUI::IntCoord(w,2,16,16), MyGUI::Align::Default); mWidgetMap[it->first] = image; - image->setImageTexture(Misc::ResourceHelpers::correctIconPath(effect->mIcon)); + //image->setImageTexture(Misc::ResourceHelpers::correctIconPath(effect->mIcon)); std::string name = ESM::MagicEffect::effectIdToString (it->first); diff --git a/apps/openmw/mwgui/tooltips.cpp b/apps/openmw/mwgui/tooltips.cpp index 4e03b788a..8b63ab541 100644 --- a/apps/openmw/mwgui/tooltips.cpp +++ b/apps/openmw/mwgui/tooltips.cpp @@ -388,7 +388,7 @@ namespace MWGui const int imageCaptionHPadding = (caption != "" ? 8 : 0); const int imageCaptionVPadding = (caption != "" ? 4 : 0); - std::string realImage = Misc::ResourceHelpers::correctIconPath(image); + std::string realImage;// = Misc::ResourceHelpers::correctIconPath(image); MyGUI::EditBox* captionWidget = mDynamicToolTipBox->createWidget("NormalText", MyGUI::IntCoord(0, 0, 300, 300), MyGUI::Align::Left | MyGUI::Align::Top, "ToolTipCaption"); captionWidget->setProperty("Static", "true"); @@ -686,7 +686,7 @@ namespace MWGui widget->setUserString("ToolTipType", "Layout"); widget->setUserString("ToolTipLayout", "BirthSignToolTip"); - widget->setUserString("ImageTexture_BirthSignImage", Misc::ResourceHelpers::correctTexturePath(sign->mTexture)); + widget->setUserString("ImageTexture_BirthSignImage", "");//Misc::ResourceHelpers::correctTexturePath(sign->mTexture)); std::string text; text += sign->mName; @@ -781,7 +781,7 @@ namespace MWGui std::string icon = effect->mIcon; int slashPos = icon.rfind('\\'); icon.insert(slashPos+1, "b_"); - icon = Misc::ResourceHelpers::correctIconPath(icon); + //icon = Misc::ResourceHelpers::correctIconPath(icon); widget->setUserString("ToolTipType", "Layout"); widget->setUserString("ToolTipLayout", "MagicEffectToolTip"); diff --git a/apps/openmw/mwgui/videowidget.cpp b/apps/openmw/mwgui/videowidget.cpp index f865de377..4ead16c5b 100644 --- a/apps/openmw/mwgui/videowidget.cpp +++ b/apps/openmw/mwgui/videowidget.cpp @@ -1,51 +1,51 @@ #include "videowidget.hpp" -#include +//#include #include -#include "../mwsound/movieaudiofactory.hpp" +//#include "../mwsound/movieaudiofactory.hpp" namespace MWGui { VideoWidget::VideoWidget() { - mPlayer.reset(new Video::VideoPlayer()); + //mPlayer.reset(new Video::VideoPlayer()); setNeedKeyFocus(true); } void VideoWidget::playVideo(const std::string &video) { - mPlayer->setAudioFactory(new MWSound::MovieAudioFactory()); - mPlayer->playVideo(video); + //mPlayer->setAudioFactory(new MWSound::MovieAudioFactory()); + //mPlayer->playVideo(video); - setImageTexture(mPlayer->getTextureName()); + //setImageTexture(mPlayer->getTextureName()); } int VideoWidget::getVideoWidth() { - return mPlayer->getVideoWidth(); + return 0;//mPlayer->getVideoWidth(); } int VideoWidget::getVideoHeight() { - return mPlayer->getVideoHeight(); + return 0;//mPlayer->getVideoHeight(); } bool VideoWidget::update() { - return mPlayer->update(); + return 0;//mPlayer->update(); } void VideoWidget::stop() { - mPlayer->close(); + //mPlayer->close(); } bool VideoWidget::hasAudioStream() { - return mPlayer->hasAudioStream(); + return 0;//mPlayer->hasAudioStream(); } void VideoWidget::autoResize(bool stretch) diff --git a/apps/openmw/mwgui/videowidget.hpp b/apps/openmw/mwgui/videowidget.hpp index ee44328eb..75aa6e98a 100644 --- a/apps/openmw/mwgui/videowidget.hpp +++ b/apps/openmw/mwgui/videowidget.hpp @@ -42,7 +42,7 @@ namespace MWGui void autoResize (bool stretch); private: - std::auto_ptr mPlayer; + //std::auto_ptr mPlayer; }; } diff --git a/apps/openmw/mwgui/widgets.cpp b/apps/openmw/mwgui/widgets.cpp index 718624a16..888955391 100644 --- a/apps/openmw/mwgui/widgets.cpp +++ b/apps/openmw/mwgui/widgets.cpp @@ -474,7 +474,7 @@ namespace MWGui mTextWidget->setCaptionWithReplacing(spellLine); mRequestedWidth = mTextWidget->getTextSize().width + 24; - mImageWidget->setImageTexture(Misc::ResourceHelpers::correctIconPath(magicEffect->mIcon)); + //mImageWidget->setImageTexture(Misc::ResourceHelpers::correctIconPath(magicEffect->mIcon)); } MWSpellEffect::~MWSpellEffect() diff --git a/apps/openmw/mwgui/windowmanagerimp.cpp b/apps/openmw/mwgui/windowmanagerimp.cpp index 279c2f22e..bc7bb0bb5 100644 --- a/apps/openmw/mwgui/windowmanagerimp.cpp +++ b/apps/openmw/mwgui/windowmanagerimp.cpp @@ -19,11 +19,12 @@ #include #include +#include + #include #include #include -#include #include @@ -102,7 +103,7 @@ namespace MWGui const std::string& logpath, const std::string& cacheDir, bool consoleOnlyScripts, Translation::Storage& translationDataStorage, ToUTF8::FromType encoding, bool exportFonts, const std::map& fallbackMap) : mConsoleOnlyScripts(consoleOnlyScripts) - , mGuiManager(NULL) + //, mGuiManager(NULL) , mRendering(ogre) , mHud(NULL) , mMap(NULL) @@ -177,7 +178,13 @@ namespace MWGui , mFallbackMap(fallbackMap) { // Set up the GUI system - mGuiManager = new OEngine::GUI::MyGUIManager(mRendering->getWindow(), mRendering->getScene(), false, logpath); + //mGuiManager = new OEngine::GUI::MyGUIManager(mRendering->getWindow(), mRendering->getScene(), false, logpath); + + MyGUI::DummyPlatform* platform = new MyGUI::DummyPlatform; + platform->initialise(logpath); + + MyGUI::Gui* gui = new MyGUI::Gui; + gui->initialise(""); MyGUI::LanguageManager::getInstance().eventRequestTag = MyGUI::newDelegate(this, &WindowManager::onRetrieveTag); @@ -207,11 +214,11 @@ namespace MWGui MyGUI::FactoryManager::getInstance().registerFactory("Resource", "ResourceImageSetPointer"); MyGUI::ResourceManager::getInstance().load("core.xml"); - +#if 0 mLoadingScreen = new LoadingScreen(mRendering->getScene (), mRendering->getWindow ()); - +#endif //set up the hardware cursor manager - mCursorManager = new SFO::SDLCursorManager(); + //mCursorManager = new SFO::SDLCursorManager(); MyGUI::PointerManager::getInstance().eventChangeMousePointer += MyGUI::newDelegate(this, &WindowManager::onCursorChange); @@ -219,7 +226,7 @@ namespace MWGui onCursorChange(MyGUI::PointerManager::getInstance().getDefaultPointer()); - mCursorManager->setEnabled(true); + //mCursorManager->setEnabled(true); // hide mygui's pointer MyGUI::PointerManager::getInstance().setVisible(false); @@ -245,6 +252,7 @@ namespace MWGui void WindowManager::initUI() { + /* // Get size info from the Gui object int w = MyGUI::RenderManager::getInstance().getViewSize().width; int h = MyGUI::RenderManager::getInstance().getViewSize().height; @@ -328,6 +336,7 @@ namespace MWGui updateVisible(); MWBase::Environment::get().getInputManager()->changeInputMode(false); + */ } void WindowManager::renderWorldMap() @@ -408,11 +417,11 @@ namespace MWGui delete mDebugWindow; delete mJailScreen; - delete mCursorManager; + //delete mCursorManager; cleanupGarbage(); - delete mGuiManager; + //delete mGuiManager; } void WindowManager::cleanupGarbage() @@ -923,6 +932,7 @@ namespace MWGui void WindowManager::changeCell(MWWorld::CellStore* cell) { + /* std::string name = MWBase::Environment::get().getWorld()->getCellName (cell); mMap->setCellName( name ); @@ -947,10 +957,12 @@ namespace MWGui MWBase::Environment::get().getWorld()->getPlayer().setLastKnownExteriorPosition(worldPos); mMap->setGlobalMapPlayerPosition(worldPos.x, worldPos.y); } + */ } void WindowManager::setActiveMap(int x, int y, bool interior) { + /* if (!interior) { mMap->setCellPrefix("Cell"); @@ -959,19 +971,22 @@ namespace MWGui mMap->setActiveCell(x,y, interior); mHud->setActiveCell(x,y, interior); + */ } void WindowManager::setPlayerPos(int cellX, int cellY, const float x, const float y) { - mMap->setPlayerPos(cellX, cellY, x, y); - mHud->setPlayerPos(cellX, cellY, x, y); + //mMap->setPlayerPos(cellX, cellY, x, y); + //mHud->setPlayerPos(cellX, cellY, x, y); } void WindowManager::setPlayerDir(const float x, const float y) { + /* mMap->setPlayerDir(x,y); mMap->setGlobalMapPlayerDir(x, y); mHud->setPlayerDir(x,y); + */ } void WindowManager::setDrowningBarVisibility(bool visible) @@ -1087,7 +1102,7 @@ namespace MWGui void WindowManager::windowResized(int x, int y) { sizeVideo(x, y); - mGuiManager->windowResized(); + //mGuiManager->windowResized(); if (!mHud) return; // UI not initialized yet @@ -1133,6 +1148,7 @@ namespace MWGui void WindowManager::onCursorChange(const std::string &name) { + /* if(!mCursorManager->cursorChanged(name)) return; //the cursor manager doesn't want any more info about this cursor //See if we can get the information we need out of the cursor resource @@ -1157,6 +1173,7 @@ namespace MWGui mCursorManager->receiveCursorInfo(name, rotation, tex, size_x, size_y, hotspot_x, hotspot_y); } } + */ } void WindowManager::popGuiMode() @@ -1266,7 +1283,7 @@ namespace MWGui void WindowManager::executeInConsole (const std::string& path) { - mConsole->executeFile (path); + //mConsole->executeFile (path); } void WindowManager::wmUpdateFps(float fps, unsigned int triangleCount, unsigned int batchCount) @@ -1507,7 +1524,7 @@ namespace MWGui void WindowManager::updatePlayer() { - mInventoryWindow->updatePlayer(); + //mInventoryWindow->updatePlayer(); const MWWorld::Ptr player = MWBase::Environment::get().getWorld()->getPlayerPtr(); if (player.getClass().getNpcStats(player).isWerewolf()) @@ -1540,9 +1557,22 @@ namespace MWGui mHud->setEnemy(enemy); } + class DummyListener : public Loading::Listener + { + public: + virtual void setLabel (const std::string& label){} + virtual void loadingOn(){} + virtual void loadingOff(){} + virtual void indicateProgress (){} + virtual void setProgressRange (size_t range){} + virtual void setProgress (size_t value){} + virtual void increaseProgress (size_t increase = 1){} + }; + Loading::Listener* WindowManager::getLoadingScreen() { - return mLoadingScreen; + static DummyListener listener; + return &listener; } void WindowManager::startRecharge(MWWorld::Ptr soulgem) @@ -1779,23 +1809,29 @@ namespace MWGui void WindowManager::fadeScreenIn(const float time, bool clearQueue) { + /* if (clearQueue) mScreenFader->clearQueue(); mScreenFader->fadeOut(time); + */ } void WindowManager::fadeScreenOut(const float time, bool clearQueue) { + /* if (clearQueue) mScreenFader->clearQueue(); mScreenFader->fadeIn(time); + */ } void WindowManager::fadeScreenTo(const int percent, const float time, bool clearQueue) { + /* if (clearQueue) mScreenFader->clearQueue(); mScreenFader->fadeTo(percent, time); + */ } void WindowManager::setBlindness(const int percent) diff --git a/apps/openmw/mwmechanics/actor.cpp b/apps/openmw/mwmechanics/actor.cpp index 675bd160a..3161bb413 100644 --- a/apps/openmw/mwmechanics/actor.cpp +++ b/apps/openmw/mwmechanics/actor.cpp @@ -1,23 +1,23 @@ #include "actor.hpp" -#include "character.hpp" +//#include "character.hpp" namespace MWMechanics { Actor::Actor(const MWWorld::Ptr &ptr, MWRender::Animation *animation) { - mCharacterController.reset(new CharacterController(ptr, animation)); + //mCharacterController.reset(new CharacterController(ptr, animation)); } void Actor::updatePtr(const MWWorld::Ptr &newPtr) { - mCharacterController->updatePtr(newPtr); + //mCharacterController->updatePtr(newPtr); } CharacterController* Actor::getCharacterController() { - return mCharacterController.get(); + return 0;//mCharacterController.get(); } AiState& Actor::getAiState() diff --git a/apps/openmw/mwmechanics/aicombat.cpp b/apps/openmw/mwmechanics/aicombat.cpp index 2f68087e5..e570d1c33 100644 --- a/apps/openmw/mwmechanics/aicombat.cpp +++ b/apps/openmw/mwmechanics/aicombat.cpp @@ -16,13 +16,13 @@ #include "../mwbase/mechanicsmanager.hpp" #include "../mwbase/dialoguemanager.hpp" -#include "../mwrender/animation.hpp" +//#include "../mwrender/animation.hpp" #include "creaturestats.hpp" #include "steering.hpp" #include "movement.hpp" -#include "character.hpp" // fixme: for getActiveWeapon +//#include "character.hpp" // fixme: for getActiveWeapon #include "aicombataction.hpp" #include "combat.hpp" @@ -188,6 +188,7 @@ namespace MWMechanics */ bool AiCombat::execute (const MWWorld::Ptr& actor, AiState& state, float duration) { +#if 0 // get or create temporary storage AiCombatStorage& storage = state.get(); @@ -673,7 +674,7 @@ namespace MWMechanics // FIXME: can fool actors to stay behind doors, etc. // Related to Bug#1102 and to some degree #1155 as well } - +#endif return false; } @@ -811,6 +812,7 @@ ESM::Weapon::AttackType chooseBestAttack(const ESM::Weapon* weapon, MWMechanics: return attackType; } +#if 0 void getMinMaxAttackDuration(const MWWorld::Ptr& actor, float (*fMinMaxDurations)[2]) { if (!actor.getClass().hasInventoryStore(actor)) // creatures @@ -873,8 +875,8 @@ void getMinMaxAttackDuration(const MWWorld::Ptr& actor, float (*fMinMaxDurations fMinMaxDurations[i][1] = fMinMaxDurations[i][0] + (start1 - start2) / weapSpeed; } - } +#endif Ogre::Vector3 AimDirToMovingTarget(const MWWorld::Ptr& actor, const MWWorld::Ptr& target, const Ogre::Vector3& vLastTargetPos, float duration, int weapType, float strength) diff --git a/apps/openmw/mwmechanics/alchemy.cpp b/apps/openmw/mwmechanics/alchemy.cpp index 58c42ddb8..319d01495 100644 --- a/apps/openmw/mwmechanics/alchemy.cpp +++ b/apps/openmw/mwmechanics/alchemy.cpp @@ -3,6 +3,7 @@ #include #include +#include #include #include diff --git a/apps/openmw/mwmechanics/mechanicsmanagerimp.cpp b/apps/openmw/mwmechanics/mechanicsmanagerimp.cpp index 0d4518f87..abfc793de 100644 --- a/apps/openmw/mwmechanics/mechanicsmanagerimp.cpp +++ b/apps/openmw/mwmechanics/mechanicsmanagerimp.cpp @@ -269,7 +269,7 @@ namespace MWMechanics creatureStats.getSpells().add(*it); // forced update and current value adjustments - mActors.updateActor (ptr, 0); + //mActors.updateActor (ptr, 0); for (int i=0; i<3; ++i) { @@ -294,22 +294,27 @@ namespace MWMechanics void MechanicsManager::add(const MWWorld::Ptr& ptr) { + /* if(ptr.getClass().isActor()) mActors.addActor(ptr); else mObjects.addObject(ptr); + */ } void MechanicsManager::remove(const MWWorld::Ptr& ptr) { + /* if(ptr == mWatched) mWatched = MWWorld::Ptr(); mActors.removeActor(ptr); mObjects.removeObject(ptr); + */ } void MechanicsManager::updateCell(const MWWorld::Ptr &old, const MWWorld::Ptr &ptr) { + /* if(old == mWatched) mWatched = ptr; @@ -317,13 +322,16 @@ namespace MWMechanics mActors.updateActor(old, ptr); else mObjects.updateObject(old, ptr); + */ } void MechanicsManager::drop(const MWWorld::CellStore *cellStore) { + /* mActors.dropActors(cellStore, mWatched); mObjects.dropObjects(cellStore); + */ } @@ -464,24 +472,24 @@ namespace MWMechanics // HACK? The player has been changed, so a new Animation object may // have been made for them. Make sure they're properly updated. - MWWorld::Ptr ptr = MWBase::Environment::get().getWorld()->getPlayerPtr(); - mActors.removeActor(ptr); - mActors.addActor(ptr, true); + //MWWorld::Ptr ptr = MWBase::Environment::get().getWorld()->getPlayerPtr(); + //mActors.removeActor(ptr); + //mActors.addActor(ptr, true); } - mActors.update(duration, paused); - mObjects.update(duration, paused); + //mActors.update(duration, paused); + //mObjects.update(duration, paused); } void MechanicsManager::rest(bool sleep) { - mActors.restoreDynamicStats (sleep); - mActors.fastForwardAi(); + //mActors.restoreDynamicStats (sleep); + //mActors.fastForwardAi(); } int MechanicsManager::getHoursToRest() const { - return mActors.getHoursToRest(mWatched); + return 0;//mActors.getHoursToRest(mWatched); } void MechanicsManager::setPlayerName (const std::string& name) @@ -671,7 +679,7 @@ namespace MWMechanics int MechanicsManager::countDeaths (const std::string& id) const { - return mActors.countDeaths (id); + return 0;//mActors.countDeaths (id); } void MechanicsManager::getPersuasionDispositionChange (const MWWorld::Ptr& npc, PersuasionType type, @@ -827,35 +835,39 @@ namespace MWMechanics void MechanicsManager::forceStateUpdate(const MWWorld::Ptr &ptr) { - if(ptr.getClass().isActor()) - mActors.forceStateUpdate(ptr); + //if(ptr.getClass().isActor()) + //mActors.forceStateUpdate(ptr); } void MechanicsManager::playAnimationGroup(const MWWorld::Ptr& ptr, const std::string& groupName, int mode, int number) { + /* if(ptr.getClass().isActor()) mActors.playAnimationGroup(ptr, groupName, mode, number); else mObjects.playAnimationGroup(ptr, groupName, mode, number); + */ } void MechanicsManager::skipAnimation(const MWWorld::Ptr& ptr) { + /* if(ptr.getClass().isActor()) mActors.skipAnimation(ptr); else mObjects.skipAnimation(ptr); + */ } bool MechanicsManager::checkAnimationPlaying(const MWWorld::Ptr& ptr, const std::string &groupName) { - if(ptr.getClass().isActor()) - return mActors.checkAnimationPlaying(ptr, groupName); - else + //if(ptr.getClass().isActor()) + // return mActors.checkAnimationPlaying(ptr, groupName); + //else return false; } void MechanicsManager::updateMagicEffects(const MWWorld::Ptr &ptr) { - mActors.updateMagicEffects(ptr); + //mActors.updateMagicEffects(ptr); } bool MechanicsManager::toggleAI() @@ -1050,7 +1062,7 @@ namespace MWMechanics const MWWorld::ESMStore& esmStore = MWBase::Environment::get().getWorld()->getStore(); float radius = esmStore.get().find("fAlarmRadius")->getFloat(); - mActors.getObjectsInRange(from, radius, neighbors); + //mActors.getObjectsInRange(from, radius, neighbors); // victim should be considered even beyond alarm radius if (!victim.isEmpty() && from.squaredDistance(Ogre::Vector3(victim.getRefData().getPosition().pos)) > radius*radius) @@ -1139,7 +1151,7 @@ namespace MWMechanics Ogre::Vector3 from = Ogre::Vector3(player.getRefData().getPosition().pos); float radius = esmStore.get().find("fAlarmRadius")->getFloat(); - mActors.getObjectsInRange(from, radius, neighbors); + //mActors.getObjectsInRange(from, radius, neighbors); // victim should be considered even beyond alarm radius if (!victim.isEmpty() && from.squaredDistance(Ogre::Vector3(victim.getRefData().getPosition().pos)) > radius*radius) @@ -1394,6 +1406,7 @@ namespace MWMechanics // if guard starts combat with player, guards pursuing player should do the same if (ptr.getClass().isClass(ptr, "Guard")) { + /* for (Actors::PtrActorMap::const_iterator iter = mActors.begin(); iter != mActors.end(); ++iter) { if (iter->first.getClass().isClass(iter->first, "Guard")) @@ -1406,6 +1419,7 @@ namespace MWMechanics } } } + */ } } @@ -1416,27 +1430,27 @@ namespace MWMechanics void MechanicsManager::getObjectsInRange(const Ogre::Vector3 &position, float radius, std::vector &objects) { - mActors.getObjectsInRange(position, radius, objects); - mObjects.getObjectsInRange(position, radius, objects); + //mActors.getObjectsInRange(position, radius, objects); + //mObjects.getObjectsInRange(position, radius, objects); } void MechanicsManager::getActorsInRange(const Ogre::Vector3 &position, float radius, std::vector &objects) { - mActors.getObjectsInRange(position, radius, objects); + //mActors.getObjectsInRange(position, radius, objects); } std::list MechanicsManager::getActorsFollowing(const MWWorld::Ptr& actor) { - return mActors.getActorsFollowing(actor); + return std::list();//mActors.getActorsFollowing(actor); } std::list MechanicsManager::getActorsFollowingIndices(const MWWorld::Ptr& actor) { - return mActors.getActorsFollowingIndices(actor); + return std::list(); //mActors.getActorsFollowingIndices(actor); } std::list MechanicsManager::getActorsFighting(const MWWorld::Ptr& actor) { - return mActors.getActorsFighting(actor); + return std::list();// mActors.getActorsFighting(actor); } int MechanicsManager::countSavedGameRecords() const @@ -1447,7 +1461,7 @@ namespace MWMechanics void MechanicsManager::write(ESM::ESMWriter &writer, Loading::Listener &listener) const { - mActors.write(writer, listener); + //mActors.write(writer, listener); ESM::StolenItems items; items.mStolenItems = mStolenItems; @@ -1464,13 +1478,13 @@ namespace MWMechanics items.load(reader); mStolenItems = items.mStolenItems; } - else - mActors.readRecord(reader, type); + //else + //mActors.readRecord(reader, type); } void MechanicsManager::clear() { - mActors.clear(); + //mActors.clear(); mStolenItems.clear(); } @@ -1516,6 +1530,6 @@ namespace MWMechanics bool MechanicsManager::isReadyToBlock(const MWWorld::Ptr &ptr) const { - return mActors.isReadyToBlock(ptr); + return 0;//mActors.isReadyToBlock(ptr); } } diff --git a/apps/openmw/mwmechanics/mechanicsmanagerimp.hpp b/apps/openmw/mwmechanics/mechanicsmanagerimp.hpp index d08334ae8..30cc207f7 100644 --- a/apps/openmw/mwmechanics/mechanicsmanagerimp.hpp +++ b/apps/openmw/mwmechanics/mechanicsmanagerimp.hpp @@ -7,8 +7,8 @@ #include "creaturestats.hpp" #include "npcstats.hpp" -#include "objects.hpp" -#include "actors.hpp" +//#include "objects.hpp" +//#include "actors.hpp" namespace Ogre { @@ -32,8 +32,8 @@ namespace MWMechanics bool mRaceSelected; bool mAI;///< is AI active? - Objects mObjects; - Actors mActors; + //Objects mObjects; + //Actors mActors; typedef std::pair Owner; // < Owner id, bool isFaction > typedef std::map OwnerMap; // < Owner, number of stolen items with this id from this owner > diff --git a/apps/openmw/mwmechanics/spellcasting.cpp b/apps/openmw/mwmechanics/spellcasting.cpp index 8a43cc932..a7d3545b3 100644 --- a/apps/openmw/mwmechanics/spellcasting.cpp +++ b/apps/openmw/mwmechanics/spellcasting.cpp @@ -19,7 +19,7 @@ #include "../mwworld/cellstore.hpp" #include "../mwworld/esmstore.hpp" -#include "../mwrender/animation.hpp" +//#include "../mwrender/animation.hpp" #include "magiceffects.hpp" #include "npcstats.hpp" @@ -419,8 +419,8 @@ namespace MWMechanics if (absorbed) { const ESM::Static* absorbStatic = MWBase::Environment::get().getWorld()->getStore().get().find ("VFX_Absorb"); - MWBase::Environment::get().getWorld()->getAnimation(target)->addEffect( - "meshes\\" + absorbStatic->mModel, ESM::MagicEffect::SpellAbsorption, false, ""); + //MWBase::Environment::get().getWorld()->getAnimation(target)->addEffect( + // "meshes\\" + absorbStatic->mModel, ESM::MagicEffect::SpellAbsorption, false, ""); // Magicka is increased by cost of spell DynamicStat magicka = target.getClass().getCreatureStats(target).getMagicka(); magicka.setCurrent(magicka.getCurrent() + spell->mData.mCost); @@ -467,8 +467,8 @@ namespace MWMechanics if (isReflected) { const ESM::Static* reflectStatic = MWBase::Environment::get().getWorld()->getStore().get().find ("VFX_Reflect"); - MWBase::Environment::get().getWorld()->getAnimation(target)->addEffect( - "meshes\\" + reflectStatic->mModel, ESM::MagicEffect::Reflect, false, ""); + //MWBase::Environment::get().getWorld()->getAnimation(target)->addEffect( + // "meshes\\" + reflectStatic->mModel, ESM::MagicEffect::Reflect, false, ""); reflectedEffects.mList.push_back(*effectIt); magnitudeMult = 0; } @@ -574,9 +574,9 @@ namespace MWMechanics // TODO: VFX are no longer active after saving/reloading the game bool loop = (magicEffect->mData.mFlags & ESM::MagicEffect::ContinuousVfx) != 0; // Note: in case of non actor, a free effect should be fine as well - MWRender::Animation* anim = MWBase::Environment::get().getWorld()->getAnimation(target); - if (anim) - anim->addEffect("meshes\\" + castStatic->mModel, magicEffect->mIndex, loop, ""); + //MWRender::Animation* anim = MWBase::Environment::get().getWorld()->getAnimation(target); + //if (anim) + // anim->addEffect("meshes\\" + castStatic->mModel, magicEffect->mIndex, loop, ""); } } } diff --git a/apps/openmw/mwmechanics/summoning.cpp b/apps/openmw/mwmechanics/summoning.cpp index 668031141..daf4424c5 100644 --- a/apps/openmw/mwmechanics/summoning.cpp +++ b/apps/openmw/mwmechanics/summoning.cpp @@ -12,7 +12,7 @@ #include "../mwworld/manualref.hpp" #include "../mwworld/inventorystore.hpp" -#include "../mwrender/animation.hpp" +//#include "../mwrender/animation.hpp" #include "creaturestats.hpp" #include "aifollow.hpp" @@ -143,8 +143,9 @@ namespace MWMechanics summonedCreatureStats.getAiSequence().stack(package, ref.getPtr()); int creatureActorId = summonedCreatureStats.getActorId(); - MWWorld::Ptr placed = MWBase::Environment::get().getWorld()->safePlaceObject(ref.getPtr(),store,ipos); + /*MWWorld::Ptr placed = */MWBase::Environment::get().getWorld()->safePlaceObject(ref.getPtr(),store,ipos); + /* MWRender::Animation* anim = MWBase::Environment::get().getWorld()->getAnimation(placed); if (anim) { @@ -153,6 +154,7 @@ namespace MWMechanics if (fx) anim->addEffect("meshes\\" + fx->mModel, -1, false); } + */ creatureMap.insert(std::make_pair(*it, creatureActorId)); } diff --git a/apps/openmw/mwrender/actors.cpp b/apps/openmw/mwrender/actors.cpp index 3da6c40c8..878712ecc 100644 --- a/apps/openmw/mwrender/actors.cpp +++ b/apps/openmw/mwrender/actors.cpp @@ -6,13 +6,14 @@ #include "../mwworld/ptr.hpp" #include "../mwworld/class.hpp" -#include "../mwrender/renderingmanager.hpp" +//#include "../mwrender/renderingmanager.hpp" +/* #include "animation.hpp" #include "activatoranimation.hpp" #include "creatureanimation.hpp" #include "npcanimation.hpp" - +*/ #include "renderconst.hpp" @@ -22,19 +23,22 @@ using namespace Ogre; Actors::~Actors() { + /* PtrAnimationMap::iterator it = mAllActors.begin(); for(;it != mAllActors.end();++it) { delete it->second; it->second = NULL; } + */ } -void Actors::setRootNode(Ogre::SceneNode* root) -{ mRootNode = root; } +//void Actors::setRootNode(Ogre::SceneNode* root) +//{ mRootNode = root; } void Actors::insertBegin(const MWWorld::Ptr &ptr) { + /* Ogre::SceneNode* cellnode; CellSceneNodeMap::const_iterator celliter = mCellSceneNodes.find(ptr.getCell()); if(celliter != mCellSceneNodes.end()) @@ -61,18 +65,22 @@ void Actors::insertBegin(const MWWorld::Ptr &ptr) insert->setOrientation(zr); ptr.getRefData().setBaseNode(insert); + */ } void Actors::insertNPC(const MWWorld::Ptr& ptr) { + /* insertBegin(ptr); NpcAnimation* anim = new NpcAnimation(ptr, ptr.getRefData().getBaseNode(), RV_Actors); delete mAllActors[ptr]; mAllActors[ptr] = anim; mRendering->addWaterRippleEmitter (ptr); + */ } void Actors::insertCreature (const MWWorld::Ptr& ptr, const std::string &model, bool weaponsShields) { + /* insertBegin(ptr); Animation* anim = NULL; if (weaponsShields) @@ -82,9 +90,11 @@ void Actors::insertCreature (const MWWorld::Ptr& ptr, const std::string &model, delete mAllActors[ptr]; mAllActors[ptr] = anim; mRendering->addWaterRippleEmitter (ptr); + */ } void Actors::insertActivator (const MWWorld::Ptr& ptr, const std::string &model, bool addLight) { + /* insertBegin(ptr); ActivatorAnimation* anim = new ActivatorAnimation(ptr, model); @@ -98,10 +108,12 @@ void Actors::insertActivator (const MWWorld::Ptr& ptr, const std::string &model, delete mAllActors[ptr]; mAllActors[ptr] = anim; + */ } bool Actors::deleteObject (const MWWorld::Ptr& ptr) { + /* if (mAllActors.find(ptr) == mAllActors.end()) return false; @@ -127,12 +139,13 @@ bool Actors::deleteObject (const MWWorld::Ptr& ptr) return false; } - +*/ return true; } void Actors::removeCell(MWWorld::CellStore* store) { + /* for(PtrAnimationMap::iterator iter = mAllActors.begin();iter != mAllActors.end();) { if(iter->first.getCell() == store) @@ -153,26 +166,22 @@ void Actors::removeCell(MWWorld::CellStore* store) mCellSceneNodes.erase(celliter); } -} - -void Actors::update (Ogre::Camera* camera) -{ - for(PtrAnimationMap::iterator iter = mAllActors.begin();iter != mAllActors.end(); ++iter) - { - iter->second->preRender(camera); - } + */ } Animation* Actors::getAnimation(const MWWorld::Ptr &ptr) { + /* PtrAnimationMap::const_iterator iter = mAllActors.find(ptr); if(iter != mAllActors.end()) return iter->second; + */ return NULL; } void Actors::updateObjectCell(const MWWorld::Ptr &old, const MWWorld::Ptr &cur) { + /* Ogre::SceneNode *node; MWWorld::CellStore *newCell = cur.getCell(); @@ -196,20 +205,7 @@ void Actors::updateObjectCell(const MWWorld::Ptr &old, const MWWorld::Ptr &cur) } mRendering->updateWaterRippleEmitterPtr (old, cur); -} - -void Actors::enableLights() -{ - PtrAnimationMap::const_iterator it = mAllActors.begin(); - for(;it != mAllActors.end();++it) - it->second->enableLights(true); -} - -void Actors::disableLights() -{ - PtrAnimationMap::const_iterator it = mAllActors.begin(); - for(;it != mAllActors.end();++it) - it->second->enableLights(false); + */ } } diff --git a/apps/openmw/mwrender/actors.hpp b/apps/openmw/mwrender/actors.hpp index 4f6c1bec2..887ea68d1 100644 --- a/apps/openmw/mwrender/actors.hpp +++ b/apps/openmw/mwrender/actors.hpp @@ -1,7 +1,17 @@ #ifndef GAME_RENDER_ACTORS_H #define GAME_RENDER_ACTORS_H -#include +//#include + +#include + +namespace OEngine +{ + namespace Render + { + class OgreRenderer; + } +} namespace MWWorld { @@ -17,15 +27,15 @@ namespace MWRender class Actors { - typedef std::map CellSceneNodeMap; - typedef std::map PtrAnimationMap; + //typedef std::map CellSceneNodeMap; + //typedef std::map PtrAnimationMap; OEngine::Render::OgreRenderer &mRend; MWRender::RenderingManager* mRendering; - Ogre::SceneNode* mRootNode; + //Ogre::SceneNode* mRootNode; - CellSceneNodeMap mCellSceneNodes; - PtrAnimationMap mAllActors; + //CellSceneNodeMap mCellSceneNodes; + //PtrAnimationMap mAllActors; void insertBegin(const MWWorld::Ptr &ptr); @@ -33,11 +43,11 @@ namespace MWRender Actors(OEngine::Render::OgreRenderer& _rend, MWRender::RenderingManager* rendering) : mRend(_rend) , mRendering(rendering) - , mRootNode(NULL) + //, mRootNode(NULL) {} ~Actors(); - void setRootNode(Ogre::SceneNode* root); + //void setRootNode(Ogre::SceneNode* root); void insertNPC(const MWWorld::Ptr& ptr); void insertCreature (const MWWorld::Ptr& ptr, const std::string& model, bool weaponsShields); @@ -45,13 +55,8 @@ namespace MWRender bool deleteObject (const MWWorld::Ptr& ptr); ///< \return found? - void enableLights(); - void disableLights(); - void removeCell(MWWorld::CellStore* store); - void update (Ogre::Camera* camera); - /// Updates containing cell for object rendering data void updateObjectCell(const MWWorld::Ptr &old, const MWWorld::Ptr &cur); diff --git a/apps/openmw/mwrender/objects.cpp b/apps/openmw/mwrender/objects.cpp index bdaa2d515..3c6a507e7 100644 --- a/apps/openmw/mwrender/objects.cpp +++ b/apps/openmw/mwrender/objects.cpp @@ -14,7 +14,7 @@ #include #include -#include +//#include #include #include "../mwworld/ptr.hpp" @@ -22,7 +22,7 @@ #include "../mwworld/cellstore.hpp" #include "renderconst.hpp" -#include "animation.hpp" +//#include "animation.hpp" using namespace MWRender; @@ -76,7 +76,7 @@ void Objects::insertBegin(const MWWorld::Ptr& ptr) void Objects::insertModel(const MWWorld::Ptr &ptr, const std::string &mesh, bool batch) { insertBegin(ptr); - +/* std::auto_ptr anim(new ObjectAnimation(ptr, mesh)); if (!mesh.empty()) @@ -96,70 +96,16 @@ void Objects::insertModel(const MWWorld::Ptr &ptr, const std::string &mesh, bool mBounds[ptr.getCell()] = Ogre::AxisAlignedBox::BOX_NULL; mBounds[ptr.getCell()].merge(bounds); - if(batch && - Settings::Manager::getBool("use static geometry", "Objects") && - anim->canBatch()) - { - Ogre::StaticGeometry* sg = 0; - - if (small) - { - if(mStaticGeometrySmall.find(ptr.getCell()) == mStaticGeometrySmall.end()) - { - uniqueID = uniqueID+1; - sg = mRenderer.getScene()->createStaticGeometry("sg" + Ogre::StringConverter::toString(uniqueID)); - sg->setOrigin(ptr.getRefData().getBaseNode()->getPosition()); - mStaticGeometrySmall[ptr.getCell()] = sg; - - sg->setRenderingDistance(static_cast(Settings::Manager::getInt("small object distance", "Viewing distance"))); - } - else - sg = mStaticGeometrySmall[ptr.getCell()]; - } - else - { - if(mStaticGeometry.find(ptr.getCell()) == mStaticGeometry.end()) - { - uniqueID = uniqueID+1; - sg = mRenderer.getScene()->createStaticGeometry("sg" + Ogre::StringConverter::toString(uniqueID)); - sg->setOrigin(ptr.getRefData().getBaseNode()->getPosition()); - mStaticGeometry[ptr.getCell()] = sg; - } - else - sg = mStaticGeometry[ptr.getCell()]; - } - - // This specifies the size of a single batch region. - // If it is set too high: - // - there will be problems choosing the correct lights - // - the culling will be more inefficient - // If it is set too low: - // - there will be too many batches. - if(ptr.getCell()->isExterior()) - sg->setRegionDimensions(Ogre::Vector3(2048,2048,2048)); - else - sg->setRegionDimensions(Ogre::Vector3(1024,1024,1024)); - - sg->setVisibilityFlags(small ? RV_StaticsSmall : RV_Statics); - - sg->setCastShadows(true); - - sg->setRenderQueueGroup(RQG_Main); - - anim->fillBatch(sg); - /* TODO: We could hold on to this and just detach it from the scene graph, so if the Ptr - * ever needs to modify we can reattach it and rebuild the StaticGeometry object without - * it. Would require associating the Ptr with the StaticGeometry. */ - anim.reset(); - } } if(anim.get() != NULL) mObjects.insert(std::make_pair(ptr, anim.release())); + */ } bool Objects::deleteObject (const MWWorld::Ptr& ptr) { + /* if(!ptr.getRefData().getBaseNode()) return true; @@ -173,13 +119,14 @@ bool Objects::deleteObject (const MWWorld::Ptr& ptr) ptr.getRefData().setBaseNode(0); return true; } - +*/ return false; } void Objects::removeCell(MWWorld::CellStore* store) { + /* for(PtrAnimationMap::iterator iter = mObjects.begin();iter != mObjects.end();) { if(iter->first.getCell() == store) @@ -216,20 +163,7 @@ void Objects::removeCell(MWWorld::CellStore* store) mRenderer.getScene()->destroySceneNode(cell->second); mCellSceneNodes.erase(cell); } -} - -void Objects::buildStaticGeometry(MWWorld::CellStore& cell) -{ - if(mStaticGeometry.find(&cell) != mStaticGeometry.end()) - { - Ogre::StaticGeometry* sg = mStaticGeometry[&cell]; - sg->build(); - } - if(mStaticGeometrySmall.find(&cell) != mStaticGeometrySmall.end()) - { - Ogre::StaticGeometry* sg = mStaticGeometrySmall[&cell]; - sg->build(); - } + */ } Ogre::AxisAlignedBox Objects::getDimensions(MWWorld::CellStore* cell) @@ -239,33 +173,16 @@ Ogre::AxisAlignedBox Objects::getDimensions(MWWorld::CellStore* cell) void Objects::update(float dt, Ogre::Camera* camera) { + /* PtrAnimationMap::const_iterator it = mObjects.begin(); for(;it != mObjects.end();++it) it->second->runAnimation(dt); - - it = mObjects.begin(); - for(;it != mObjects.end();++it) - it->second->preRender(camera); - -} - -void Objects::rebuildStaticGeometry() -{ - for (std::map::iterator it = mStaticGeometry.begin(); it != mStaticGeometry.end(); ++it) - { - it->second->destroy(); - it->second->build(); - } - - for (std::map::iterator it = mStaticGeometrySmall.begin(); it != mStaticGeometrySmall.end(); ++it) - { - it->second->destroy(); - it->second->build(); - } + */ } void Objects::updateObjectCell(const MWWorld::Ptr &old, const MWWorld::Ptr &cur) { + /* Ogre::SceneNode *node; MWWorld::CellStore *newCell = cur.getCell(); @@ -286,13 +203,16 @@ void Objects::updateObjectCell(const MWWorld::Ptr &old, const MWWorld::Ptr &cur) anim->updatePtr(cur); mObjects[cur] = anim; } + */ } ObjectAnimation* Objects::getAnimation(const MWWorld::Ptr &ptr) { + /* PtrAnimationMap::const_iterator iter = mObjects.find(ptr); if(iter != mObjects.end()) return iter->second; + */ return NULL; } diff --git a/apps/openmw/mwrender/objects.hpp b/apps/openmw/mwrender/objects.hpp index adfe5ca26..b2f07ab0f 100644 --- a/apps/openmw/mwrender/objects.hpp +++ b/apps/openmw/mwrender/objects.hpp @@ -55,7 +55,6 @@ public: ///< \return found? void removeCell(MWWorld::CellStore* store); - void buildStaticGeometry(MWWorld::CellStore &cell); void setRootNode(Ogre::SceneNode* root); void rebuildStaticGeometry(); diff --git a/apps/openmw/mwrender/renderingmanager.cpp b/apps/openmw/mwrender/renderingmanager.cpp index 8fb1ee53c..c64a265ac 100644 --- a/apps/openmw/mwrender/renderingmanager.cpp +++ b/apps/openmw/mwrender/renderingmanager.cpp @@ -31,7 +31,6 @@ #include "../mwbase/world.hpp" // these includes can be removed once the static-hack is gone #include "../mwbase/environment.hpp" -#include "../mwbase/inputmanager.hpp" // FIXME #include "../mwbase/windowmanager.hpp" // FIXME #include "../mwbase/statemanager.hpp" @@ -40,7 +39,6 @@ #include "../mwworld/ptr.hpp" -#include "shadows.hpp" #include "localmap.hpp" #include "water.hpp" #include "npcanimation.hpp" @@ -59,7 +57,6 @@ RenderingManager::RenderingManager(OEngine::Render::OgreRenderer& _rend, const b : mRendering(_rend) , mFallback(fallback) , mPlayerAnimation(NULL) - , mAmbientMode(0) , mSunEnabled(0) , mPhysicsEngine(engine) , mTerrain(NULL) @@ -162,15 +159,12 @@ RenderingManager::RenderingManager(OEngine::Render::OgreRenderer& _rend, const b mCamera = new MWRender::Camera(mRendering.getCamera()); - mShadows = new Shadows(&mRendering); - mSkyManager = new SkyManager(mRootNode, mRendering.getCamera()); mOcclusionQuery = new OcclusionQuery(&mRendering, mSkyManager->getSunNode()); mSun = 0; - mDebugging = new Debugging(mRootNode, engine); mLocalMap = new MWRender::LocalMap(&mRendering, this); mWater = new MWRender::Water(mRendering.getCamera(), this, mFallback); @@ -185,8 +179,6 @@ RenderingManager::~RenderingManager () delete mPlayerAnimation; delete mCamera; delete mSkyManager; - delete mDebugging; - delete mShadows; delete mTerrain; delete mLocalMap; delete mOcclusionQuery; @@ -222,7 +214,6 @@ void RenderingManager::removeCell (MWWorld::CellStore *store) mLocalMap->saveFogOfWar(store); mObjects->removeCell(store); mActors->removeCell(store); - mDebugging->cellRemoved(store); } void RenderingManager::removeWater () @@ -251,7 +242,6 @@ void RenderingManager::cellAdded (MWWorld::CellStore *store) mObjects->buildStaticGeometry (*store); sh::Factory::getInstance().unloadUnreferencedMaterials(); - mDebugging->cellAdded(store); } void RenderingManager::addObject (const MWWorld::Ptr& ptr, const std::string& model){ @@ -477,9 +467,10 @@ void RenderingManager::skySetMoonColour (bool red){ bool RenderingManager::toggleRenderMode(int mode) { +#if 0 if (mode == MWBase::World::Render_CollisionDebug || mode == MWBase::World::Render_Pathgrid) return mDebugging->toggleRenderMode(mode); - else if (mode == MWBase::World::Render_Wireframe) + if (mode == MWBase::World::Render_Wireframe) { if (mRendering.getCamera()->getPolygonMode() == PM_SOLID) { @@ -498,6 +489,8 @@ bool RenderingManager::toggleRenderMode(int mode) mRendering.getScene()->showBoundingBoxes(show); return show; } +#endif + return 0; } void RenderingManager::configureFog(const MWWorld::CellStore &mCell) @@ -547,20 +540,7 @@ void RenderingManager::applyFog (bool underwater) void RenderingManager::setAmbientMode() { - switch (mAmbientMode) - { - case 0: - setAmbientColour(mAmbientColor); - break; - - case 1: - setAmbientColour(0.7f*mAmbientColor + 0.3f*ColourValue(1,1,1)); - break; - - case 2: - setAmbientColour(ColourValue(1,1,1)); - break; - } + setAmbientColour(mAmbientColor); } void RenderingManager::configureAmbient(MWWorld::CellStore &mCell) @@ -805,12 +785,6 @@ void RenderingManager::processChangedSettings(const Settings::CategorySettingVec sh::Factory::getInstance ().setCurrentLanguage (lang); rebuild = true; } - else if (it->first == "Shadows") - { - mShadows->recreate (); - - rebuild = true; - } } if (changeRes) diff --git a/apps/openmw/mwrender/renderingmanager.hpp b/apps/openmw/mwrender/renderingmanager.hpp index 9f029c1b9..5bfd8ae77 100644 --- a/apps/openmw/mwrender/renderingmanager.hpp +++ b/apps/openmw/mwrender/renderingmanager.hpp @@ -248,9 +248,6 @@ private: MWRender::NpcAnimation *mPlayerAnimation; - // 0 normal, 1 more bright, 2 max - int mAmbientMode; - Ogre::ColourValue mAmbientColor; Ogre::Light* mSun; @@ -264,12 +261,8 @@ private: MWRender::Camera *mCamera; - MWRender::Debugging *mDebugging; - MWRender::LocalMap* mLocalMap; - MWRender::Shadows* mShadows; - bool mRenderWorld; }; diff --git a/apps/openmw/mwscript/interpretercontext.cpp b/apps/openmw/mwscript/interpretercontext.cpp index a8c04aa4b..fab65b152 100644 --- a/apps/openmw/mwscript/interpretercontext.cpp +++ b/apps/openmw/mwscript/interpretercontext.cpp @@ -270,6 +270,7 @@ namespace MWScript std::string InterpreterContext::getActionBinding(const std::string& action) const { + /* MWBase::InputManager* input = MWBase::Environment::get().getInputManager(); std::vector actions = input->getActionKeySorting (); for (std::vector::const_iterator it = actions.begin(); it != actions.end(); ++it) @@ -286,6 +287,7 @@ namespace MWScript return input->getActionKeyBindingName (*it); } } + */ return "None"; } diff --git a/apps/openmw/mwsound/soundmanagerimp.cpp b/apps/openmw/mwsound/soundmanagerimp.cpp index 06c40dd8e..5fc39f03e 100644 --- a/apps/openmw/mwsound/soundmanagerimp.cpp +++ b/apps/openmw/mwsound/soundmanagerimp.cpp @@ -211,6 +211,7 @@ namespace MWSound Ogre::StringVector filelist; if (mMusicFiles.find(mCurrentPlaylist) == mMusicFiles.end()) { +#if 0 Ogre::StringVector groups = Ogre::ResourceGroupManager::getSingleton().getResourceGroups (); for (Ogre::StringVector::iterator it = groups.begin(); it != groups.end(); ++it) { @@ -219,6 +220,8 @@ namespace MWSound filelist.insert(filelist.end(), resourcesInThisGroup->begin(), resourcesInThisGroup->end()); } mMusicFiles[mCurrentPlaylist] = filelist; + +#endif } else filelist = mMusicFiles[mCurrentPlaylist]; diff --git a/apps/openmw/mwworld/physicssystem.cpp b/apps/openmw/mwworld/physicssystem.cpp index d31ae520b..a59efecfe 100644 --- a/apps/openmw/mwworld/physicssystem.cpp +++ b/apps/openmw/mwworld/physicssystem.cpp @@ -14,10 +14,9 @@ #include #include #include -#include +//#include #include -#include #include #include @@ -31,7 +30,7 @@ #include "../mwworld/esmstore.hpp" #include "../mwworld/cellstore.hpp" -#include "../apps/openmw/mwrender/animation.hpp" +//#include "../apps/openmw/mwrender/animation.hpp" #include "../apps/openmw/mwbase/world.hpp" #include "../apps/openmw/mwbase/environment.hpp" @@ -45,6 +44,7 @@ namespace void animateCollisionShapes (std::map& map, btDynamicsWorld* dynamicsWorld) { + /* for (std::map::iterator it = map.begin(); it != map.end(); ++it) { @@ -85,6 +85,7 @@ void animateCollisionShapes (std::mapupdateSingleAabb(it->first); } + */ } } @@ -502,8 +503,8 @@ namespace MWWorld mRender(_rend), mEngine(0), mTimeAccum(0.0f), mWaterEnabled(false), mWaterHeight(0) { // Create physics. shapeLoader is deleted by the physic engine - NifBullet::ManualBulletShapeLoader* shapeLoader = new NifBullet::ManualBulletShapeLoader(); - mEngine = new OEngine::Physic::PhysicEngine(shapeLoader); + //NifBullet::ManualBulletShapeLoader* shapeLoader = new NifBullet::ManualBulletShapeLoader(); + mEngine = new OEngine::Physic::PhysicEngine(0);//shapeLoader); } PhysicsSystem::~PhysicsSystem() @@ -521,7 +522,7 @@ namespace MWWorld std::pair PhysicsSystem::getFacedHandle(float queryDistance) { - Ray ray = mRender.getCamera()->getCameraToViewportRay(0.5, 0.5); + Ray ray;// = mRender.getCamera()->getCameraToViewportRay(0.5, 0.5); Ogre::Vector3 origin_ = ray.getOrigin(); btVector3 origin(origin_.x, origin_.y, origin_.z); @@ -537,7 +538,7 @@ namespace MWWorld std::vector < std::pair > PhysicsSystem::getFacedHandles (float queryDistance) { - Ray ray = mRender.getCamera()->getCameraToViewportRay(0.5, 0.5); + Ray ray;// = mRender.getCamera()->getCameraToViewportRay(0.5, 0.5); Ogre::Vector3 origin_ = ray.getOrigin(); btVector3 origin(origin_.x, origin_.y, origin_.z); @@ -555,7 +556,7 @@ namespace MWWorld std::vector < std::pair > PhysicsSystem::getFacedHandles (float mouseX, float mouseY, float queryDistance) { - Ray ray = mRender.getCamera()->getCameraToViewportRay(mouseX, mouseY); + Ray ray;// = mRender.getCamera()->getCameraToViewportRay(mouseX, mouseY); Ogre::Vector3 from = ray.getOrigin(); Ogre::Vector3 to = ray.getPoint(queryDistance); @@ -628,9 +629,9 @@ namespace MWWorld std::pair PhysicsSystem::castRay(float mouseX, float mouseY, Ogre::Vector3* normal, std::string* hit) { - Ogre::Ray ray = mRender.getCamera()->getCameraToViewportRay( - mouseX, - mouseY); + Ogre::Ray ray;// = mRender.getCamera()->getCameraToViewportRay( + //mouseX, + //mouseY); Ogre::Vector3 from = ray.getOrigin(); Ogre::Vector3 to = ray.getPoint(200); /// \todo make this distance (ray length) configurable @@ -755,7 +756,7 @@ namespace MWWorld if(handleToMesh.find(handle) != handleToMesh.end()) { std::string model = ptr.getClass().getModel(ptr); - model = Misc::ResourceHelpers::correctActorModelPath(model); // FIXME: scaling shouldn't require model + //model = Misc::ResourceHelpers::correctActorModelPath(model); // FIXME: scaling shouldn't require model bool placeable = false; if (OEngine::Physic::RigidBody* body = mEngine->getRigidBody(handle,true)) @@ -803,8 +804,9 @@ namespace MWWorld bool PhysicsSystem::getObjectAABB(const MWWorld::Ptr &ptr, Ogre::Vector3 &min, Ogre::Vector3 &max) { + // FIXME: since raycasting shapes are going away, this should use the osg ComputeBoundingBoxVisitor std::string model = ptr.getClass().getModel(ptr); - model = Misc::ResourceHelpers::correctActorModelPath(model); + //model = Misc::ResourceHelpers::correctActorModelPath(model); if (model.empty()) { return false; } diff --git a/apps/openmw/mwworld/scene.cpp b/apps/openmw/mwworld/scene.cpp index 8d689240b..6d7408607 100644 --- a/apps/openmw/mwworld/scene.cpp +++ b/apps/openmw/mwworld/scene.cpp @@ -4,6 +4,7 @@ #include #include +#include #include "../mwbase/environment.hpp" #include "../mwbase/world.hpp" @@ -11,7 +12,7 @@ #include "../mwbase/mechanicsmanager.hpp" #include "../mwbase/windowmanager.hpp" -#include "physicssystem.hpp" +//#include "physicssystem.hpp" #include "player.hpp" #include "localscripts.hpp" #include "esmstore.hpp" @@ -22,6 +23,7 @@ namespace { +#if 0 void addObject(const MWWorld::Ptr& ptr, MWWorld::PhysicsSystem& physics, MWRender::RenderingManager& rendering) { @@ -113,6 +115,7 @@ namespace return true; } +#endif } @@ -121,15 +124,15 @@ namespace MWWorld void Scene::updateObjectLocalRotation (const Ptr& ptr) { - ::updateObjectLocalRotation(ptr, *mPhysics, mRendering); + //::updateObjectLocalRotation(ptr, *mPhysics, mRendering); } void Scene::updateObjectRotation (const Ptr& ptr) { if(ptr.getRefData().getBaseNode() != 0) { - mRendering.rotateObject(ptr); - mPhysics->rotateObject(ptr); + //mRendering.rotateObject(ptr); + //mPhysics->rotateObject(ptr); } } @@ -161,8 +164,8 @@ namespace MWWorld { // Note: exterior cell maps must be updated, even if they were visited before, because the set of surrounding cells might be different // (and objects in a different cell can "bleed" into another cells map if they cross the border) - for (CellStoreCollection::iterator active = mActiveCells.begin(); active!=mActiveCells.end(); ++active) - mRendering.requestMap(*active); + //for (CellStoreCollection::iterator active = mActiveCells.begin(); active!=mActiveCells.end(); ++active) + //mRendering.requestMap(*active); mNeedMapUpdate = false; if (mCurrentCell->isExterior()) @@ -173,7 +176,7 @@ namespace MWWorld } } - mRendering.update (duration, paused); + //mRendering.update (duration, paused); } void Scene::unloadCell (CellStoreCollection::iterator iter) @@ -188,7 +191,7 @@ namespace MWWorld iter2!=functor.mHandles.end(); ++iter2) { Ogre::SceneNode* node = *iter2; - mPhysics->removeObject (node->getName()); + //mPhysics->removeObject (node->getName()); } } @@ -199,11 +202,11 @@ namespace MWWorld (*iter)->getCell()->getGridX(), (*iter)->getCell()->getGridY() ); - if (land && land->mDataTypes&ESM::Land::DATA_VHGT) - mPhysics->removeHeightField ((*iter)->getCell()->getGridX(), (*iter)->getCell()->getGridY()); + //if (land && land->mDataTypes&ESM::Land::DATA_VHGT) + //mPhysics->removeHeightField ((*iter)->getCell()->getGridX(), (*iter)->getCell()->getGridY()); } - mRendering.removeCell(*iter); + //mRendering.removeCell(*iter); MWBase::Environment::get().getWorld()->getLocalScripts().clearCell (*iter); @@ -224,6 +227,7 @@ namespace MWWorld float verts = ESM::Land::LAND_SIZE; float worldsize = ESM::Land::REAL_SIZE; +#if 0 // Load terrain physics first... if (cell->getCell()->isExterior()) { @@ -248,6 +252,7 @@ namespace MWWorld ; } } +#endif cell->respawn(); @@ -255,6 +260,7 @@ namespace MWWorld /// \todo rescale depending on the state of a new GMST insertCell (*cell, true, loadingListener); +#if 0 mRendering.cellAdded (cell); bool waterEnabled = cell->getCell()->hasWater(); mRendering.setWaterEnabled(waterEnabled); @@ -267,6 +273,7 @@ namespace MWWorld mPhysics->disableWater(); mRendering.configureAmbient(*cell); +#endif } // register local scripts @@ -300,7 +307,7 @@ namespace MWWorld int newX, newY; MWBase::Environment::get().getWorld()->positionToIndex(pos.x, pos.y, newX, newY); changeCellGrid(newX, newY); - mRendering.updateTerrain(); + //mRendering.updateTerrain(); } } @@ -309,7 +316,7 @@ namespace MWWorld Loading::Listener* loadingListener = MWBase::Environment::get().getWindowManager()->getLoadingScreen(); Loading::ScopedLoad load(loadingListener); - mRendering.enableTerrain(true); + //mRendering.enableTerrain(true); std::string loadingExteriorText = "#{sLoadingMessage3}"; loadingListener->setLabel(loadingExteriorText); @@ -404,7 +411,7 @@ namespace MWWorld world->getPlayer().setCell(cell); MWWorld::Ptr player = world->getPlayerPtr(); - mRendering.updatePlayerPtr(player); + //mRendering.updatePlayerPtr(player); if (adjustPlayerPos) { world->moveObject(player, pos.pos[0], pos.pos[1], pos.pos[2]); @@ -428,7 +435,7 @@ namespace MWWorld //We need the ogre renderer and a scene node. Scene::Scene (MWRender::RenderingManager& rendering, PhysicsSystem *physics) - : mCurrentCell (0), mCellChanged (false), mPhysics(physics), mRendering(rendering), mNeedMapUpdate(false) + : mCurrentCell (0), mCellChanged (false), /*mPhysics(physics), mRendering(rendering),*/ mNeedMapUpdate(false) { } @@ -460,7 +467,7 @@ namespace MWWorld loadingListener->setLabel(loadingInteriorText); Loading::ScopedLoad load(loadingListener); - mRendering.enableTerrain(false); + //mRendering.enableTerrain(false); if(!loadcell) { @@ -497,7 +504,7 @@ namespace MWWorld changePlayerCell(cell, position, true); // adjust fog - mRendering.configureFog(*mCurrentCell); + //mRendering.configureFog(*mCurrentCell); // Sky system MWBase::Environment::get().getWorld()->adjustSky(); @@ -523,7 +530,7 @@ namespace MWWorld CellStore* current = MWBase::Environment::get().getWorld()->getExterior(x, y); changePlayerCell(current, position, adjustPlayerPos); - mRendering.updateTerrain(); + //mRendering.updateTerrain(); } CellStore* Scene::getCurrentCell () @@ -538,17 +545,17 @@ namespace MWWorld void Scene::insertCell (CellStore &cell, bool rescale, Loading::Listener* loadingListener) { - InsertFunctor functor (cell, rescale, *loadingListener, *mPhysics, mRendering); - cell.forEach (functor); + //InsertFunctor functor (cell, rescale, *loadingListener, *mPhysics, mRendering); + //cell.forEach (functor); } void Scene::addObjectToScene (const Ptr& ptr) { try { - addObject(ptr, *mPhysics, mRendering); - MWBase::Environment::get().getWorld()->rotateObject(ptr, 0, 0, 0, true); - MWBase::Environment::get().getWorld()->scaleObject(ptr, ptr.getCellRef().getScale()); + //addObject(ptr, *mPhysics, mRendering); + //MWBase::Environment::get().getWorld()->rotateObject(ptr, 0, 0, 0, true); + //MWBase::Environment::get().getWorld()->scaleObject(ptr, ptr.getCellRef().getScale()); } catch (std::exception& e) { @@ -560,8 +567,8 @@ namespace MWWorld { MWBase::Environment::get().getMechanicsManager()->remove (ptr); MWBase::Environment::get().getSoundManager()->stopSound3D (ptr); - mPhysics->removeObject (ptr.getRefData().getHandle()); - mRendering.removeObject (ptr); + //mPhysics->removeObject (ptr.getRefData().getHandle()); + //mRendering.removeObject (ptr); } bool Scene::isCellActive(const CellStore &cell) diff --git a/apps/openmw/mwworld/scene.hpp b/apps/openmw/mwworld/scene.hpp index a9d80bf17..341a89a78 100644 --- a/apps/openmw/mwworld/scene.hpp +++ b/apps/openmw/mwworld/scene.hpp @@ -1,11 +1,13 @@ #ifndef GAME_MWWORLD_SCENE_H #define GAME_MWWORLD_SCENE_H -#include "../mwrender/renderingmanager.hpp" +//#include "../mwrender/renderingmanager.hpp" #include "ptr.hpp" #include "globals.hpp" +#include + namespace Ogre { class Vector3; @@ -35,6 +37,7 @@ namespace MWRender { class SkyManager; class CellRender; + class RenderingManager; } namespace MWWorld @@ -55,8 +58,8 @@ namespace MWWorld CellStore* mCurrentCell; // the cell the player is in CellStoreCollection mActiveCells; bool mCellChanged; - PhysicsSystem *mPhysics; - MWRender::RenderingManager& mRendering; + //PhysicsSystem *mPhysics; + //MWRender::RenderingManager& mRendering; bool mNeedMapUpdate; diff --git a/apps/openmw/mwworld/weather.cpp b/apps/openmw/mwworld/weather.cpp index a9ca8e72b..82814b623 100644 --- a/apps/openmw/mwworld/weather.cpp +++ b/apps/openmw/mwworld/weather.cpp @@ -13,7 +13,7 @@ #include "../mwsound/sound.hpp" -#include "../mwrender/renderingmanager.hpp" +//#include "../mwrender/renderingmanager.hpp" #include "player.hpp" #include "esmstore.hpp" diff --git a/apps/openmw/mwworld/worldimp.cpp b/apps/openmw/mwworld/worldimp.cpp index 013386f8f..8b2035fe9 100644 --- a/apps/openmw/mwworld/worldimp.cpp +++ b/apps/openmw/mwworld/worldimp.cpp @@ -16,7 +16,6 @@ #include -#include #include #include #include @@ -37,8 +36,7 @@ #include "../mwmechanics/combat.hpp" #include "../mwmechanics/aiavoiddoor.hpp" //Used to tell actors to avoid doors -#include "../mwrender/sky.hpp" -#include "../mwrender/animation.hpp" +//#include "../mwrender/animation.hpp" #include "../mwscript/interpretercontext.hpp" @@ -51,7 +49,8 @@ #include "containerstore.hpp" #include "inventorystore.hpp" #include "actionteleport.hpp" -#include "projectilemanager.hpp" +//#include "projectilemanager.hpp" +#include "weather.hpp" #include "contentloader.hpp" #include "esmloader.hpp" @@ -129,6 +128,7 @@ namespace MWWorld void World::adjustSky() { +#if 0 if (mSky && (isCellExterior() || isCellQuasiExterior())) { mRendering->skySetHour (mGlobalVariables["gamehour"].getFloat()); @@ -139,9 +139,10 @@ namespace MWWorld } else mRendering->skyDisable(); +#endif } - World::World (OEngine::Render::OgreRenderer& renderer, + World::World ( const Files::Collections& fileCollections, const std::vector& contentFiles, const boost::filesystem::path& resDir, const boost::filesystem::path& cacheDir, @@ -156,16 +157,16 @@ namespace MWWorld mStartCell (startCell), mStartupScript(startupScript), mScriptsEnabled(true) { - mPhysics = new PhysicsSystem(renderer); - mPhysEngine = mPhysics->getEngine(); - + //mPhysics = new PhysicsSystem(renderer); + //mPhysEngine = mPhysics->getEngine(); +#if 0 mProjectileManager.reset(new ProjectileManager(renderer.getScene(), *mPhysEngine)); +#endif + //mRendering = new MWRender::RenderingManager(renderer, resDir, cacheDir, mPhysEngine,&mFallback); - mRendering = new MWRender::RenderingManager(renderer, resDir, cacheDir, mPhysEngine,&mFallback); - - mPhysEngine->setSceneManager(renderer.getScene()); + //mPhysEngine->setSceneManager(renderer.getScene()); - mWeatherManager = new MWWorld::WeatherManager(mRendering,&mFallback); + //mWeatherManager = new MWWorld::WeatherManager(mRendering,&mFallback); mEsm.resize(contentFiles.size()); Loading::Listener* listener = MWBase::Environment::get().getWindowManager()->getLoadingScreen(); @@ -195,7 +196,7 @@ namespace MWWorld mGlobalVariables.fill (mStore); - mWorldScene = new Scene(*mRendering, mPhysics); + mWorldScene = new Scene(*mRendering, NULL/*mPhysics*/); } void World::startNewGame (bool bypass) @@ -208,7 +209,7 @@ namespace MWWorld setupPlayer(); renderPlayer(); - mRendering->resetCamera(); + //mRendering->resetCamera(); MWBase::Environment::get().getWindowManager()->updatePlayer(); @@ -257,13 +258,13 @@ namespace MWWorld MWBase::Environment::get().getWindowManager()->playVideo(mFallback.getFallbackString("Movies_New_Game"), true); // enable collision - if (!mPhysics->toggleCollisionMode()) - mPhysics->toggleCollisionMode(); + //if (!mPhysics->toggleCollisionMode()) + // mPhysics->toggleCollisionMode(); // we don't want old weather to persist on a new game - delete mWeatherManager; - mWeatherManager = 0; - mWeatherManager = new MWWorld::WeatherManager(mRendering,&mFallback); + //delete mWeatherManager; + //mWeatherManager = 0; + //mWeatherManager = new MWWorld::WeatherManager(mRendering,&mFallback); if (!mStartupScript.empty()) MWBase::Environment::get().getWindowManager()->executeInConsole(mStartupScript); @@ -271,11 +272,11 @@ namespace MWWorld void World::clear() { - mWeatherManager->clear(); - mRendering->clear(); - + //mWeatherManager->clear(); + //mRendering->clear(); +#if 0 mProjectileManager->clear(); - +#endif mLocalScripts.clear(); mWorldScene->changeToVoid(); @@ -310,7 +311,9 @@ namespace MWWorld mCells.countSavedGameRecords() +mStore.countSavedGameRecords() +mGlobalVariables.countSavedGameRecords() + #if 0 +mProjectileManager->countSavedGameRecords() + #endif +1 // player record +1 // weather record +1 // actorId counter @@ -329,8 +332,8 @@ namespace MWWorld for (Scene::CellStoreCollection::const_iterator iter (mWorldScene->getActiveCells().begin()); iter!=mWorldScene->getActiveCells().end(); ++iter) { - CellStore* cellstore = *iter; - mRendering->writeFog(cellstore); + //CellStore* cellstore = *iter; + //mRendering->writeFog(cellstore); } MWMechanics::CreatureStats::writeActorIdCounter(writer); @@ -340,9 +343,10 @@ namespace MWWorld mCells.write (writer, progress); mGlobalVariables.write (writer, progress); mPlayer->write (writer, progress); - mWeatherManager->write (writer, progress); + //mWeatherManager->write (writer, progress); +#if 0 mProjectileManager->write (writer, progress); - +#endif writer.startRecord(ESM::REC_ENAB); writer.writeHNT("TELE", mTeleportEnabled); writer.writeHNT("LEVT", mLevitationEnabled); @@ -369,9 +373,12 @@ namespace MWWorld if (!mStore.readRecord (reader, type) && !mGlobalVariables.readRecord (reader, type) && !mPlayer->readRecord (reader, type) && - !mWeatherManager->readRecord (reader, type) && - !mCells.readRecord (reader, type, contentFileMap) && - !mProjectileManager->readRecord (reader, type)) + //!mWeatherManager->readRecord (reader, type) && + !mCells.readRecord (reader, type, contentFileMap) + #if 0 + && !mProjectileManager->readRecord (reader, type) + #endif + ) { throw std::runtime_error ("unknown record in saved game"); } @@ -463,13 +470,14 @@ namespace MWWorld World::~World() { +#if 0 // Must be cleared before mRendering is destroyed mProjectileManager->clear(); - - delete mWeatherManager; +#endif + //delete mWeatherManager; delete mWorldScene; - delete mRendering; - delete mPhysics; + //delete mRendering; + //delete mPhysics; delete mPlayer; } @@ -521,6 +529,7 @@ namespace MWWorld void World::useDeathCamera() { +#if 0 if(mRendering->getCamera()->isVanityOrPreviewModeEnabled() ) { mRendering->getCamera()->togglePreviewMode(false); @@ -528,6 +537,7 @@ namespace MWWorld } if(mRendering->getCamera()->isFirstPerson()) mRendering->getCamera()->toggleViewMode(true); +#endif } MWWorld::Player& World::getPlayer() @@ -804,7 +814,7 @@ namespace MWWorld { MWBase::Environment::get().getMechanicsManager()->advanceTime(static_cast(hours * 3600)); - mWeatherManager->advanceTime (hours); + //mWeatherManager->advanceTime (hours); hours += mGlobalVariables["gamehour"].getFloat(); @@ -828,9 +838,9 @@ namespace MWWorld mGlobalVariables["gamehour"].setFloat(static_cast(hour)); - mRendering->skySetHour (hour); + //mRendering->skySetHour (hour); - mWeatherManager->setHour(static_cast(hour)); + //mWeatherManager->setHour(static_cast(hour)); if (days>0) setDay (days + mGlobalVariables["day"].getInteger()); @@ -865,7 +875,7 @@ namespace MWWorld mGlobalVariables["day"].setInteger (day); mGlobalVariables["month"].setInteger (month); - mRendering->skySetDate (day, month); + //mRendering->skySetDate (day, month); } void World::setMonth (int month) @@ -886,7 +896,7 @@ namespace MWWorld if (years>0) mGlobalVariables["year"].setInteger (years+mGlobalVariables["year"].getInteger()); - mRendering->skySetDate (mGlobalVariables["day"].getInteger(), month); + //mRendering->skySetDate (mGlobalVariables["day"].getInteger(), month); } int World::getDay() const @@ -932,6 +942,7 @@ namespace MWWorld bool World::toggleSky() { +#if 0 if (mSky) { mSky = false; @@ -944,21 +955,23 @@ namespace MWWorld mRendering->skyEnable(); return true; } +#endif + return 0; } int World::getMasserPhase() const { - return mRendering->skyGetMasserPhase(); + return 0;//mRendering->skyGetMasserPhase(); } int World::getSecundaPhase() const { - return mRendering->skyGetSecundaPhase(); + return 0;//mRendering->skyGetSecundaPhase(); } void World::setMoonColour (bool red) { - mRendering->skySetMoonColour (red); + //mRendering->skySetMoonColour (red); } float World::getTimeScaleFactor() const @@ -968,13 +981,15 @@ namespace MWWorld void World::changeToInteriorCell (const std::string& cellName, const ESM::Position& position) { - mPhysics->clearQueuedMovement(); + //mPhysics->clearQueuedMovement(); if (mCurrentWorldSpace != cellName) { // changed worldspace +#if 0 mProjectileManager->clear(); mRendering->notifyWorldSpaceChanged(); +#endif mCurrentWorldSpace = cellName; } @@ -985,13 +1000,15 @@ namespace MWWorld void World::changeToExteriorCell (const ESM::Position& position) { - mPhysics->clearQueuedMovement(); + //mPhysics->clearQueuedMovement(); if (mCurrentWorldSpace != "sys::default") // FIXME { // changed worldspace +#if 0 mProjectileManager->clear(); mRendering->notifyWorldSpaceChanged(); +#endif } removeContainerScripts(getPlayerPtr()); mWorldScene->changeToExteriorCell(position, true); @@ -1049,6 +1066,7 @@ namespace MWWorld std::pair World::getHitContact(const MWWorld::Ptr &ptr, float distance) { + /* const ESM::Position &posdata = ptr.getRefData().getPosition(); Ogre::Vector3 pos(posdata.pos); Ogre::Quaternion rot = Ogre::Quaternion(Ogre::Radian(posdata.rot[2]), Ogre::Vector3::NEGATIVE_UNIT_Z) * @@ -1063,9 +1081,10 @@ namespace MWWorld if(node != NULL) pos += node->_getDerivedPosition(); } + */ - std::pair result = mPhysics->getHitContact(ptr.getRefData().getHandle(), - pos, rot, distance); + std::pair result;// = mPhysics->getHitContact(ptr.getRefData().getHandle(), + // pos, rot, distance); if(result.first.empty()) return std::make_pair(MWWorld::Ptr(), Ogre::Vector3(0.0f)); @@ -1174,7 +1193,7 @@ namespace MWWorld MWWorld::Ptr copy = ptr.getClass().copyToCell(ptr, *newCell, pos); - mRendering->updateObjectCell(ptr, copy); + //mRendering->updateObjectCell(ptr, copy); ptr.getRefData().setBaseNode(NULL); MWBase::Environment::get().getSoundManager()->updatePtr (ptr, copy); @@ -1196,8 +1215,8 @@ namespace MWWorld } if (haveToMove && ptr.getRefData().getBaseNode()) { - mRendering->moveObject(ptr, vec); - mPhysics->moveObject (ptr); + //mRendering->moveObject(ptr, vec); + //mPhysics->moveObject (ptr); } if (isPlayer) { @@ -1235,8 +1254,8 @@ namespace MWWorld if(ptr.getRefData().getBaseNode() == 0) return; - mRendering->scaleObject(ptr, Vector3(scale,scale,scale)); - mPhysics->scaleObject(ptr); + //mRendering->scaleObject(ptr, Vector3(scale,scale,scale)); + //mPhysics->scaleObject(ptr); } void World::rotateObjectImp (const Ptr& ptr, Ogre::Vector3 rot, bool adjust) @@ -1322,7 +1341,7 @@ namespace MWWorld return; } - float terrainHeight = mRendering->getTerrainHeightAt(Ogre::Vector3(pos.pos)); + float terrainHeight = 0;//mRendering->getTerrainHeightAt(Ogre::Vector3(pos.pos)); if (pos.pos[2] < terrainHeight) pos.pos[2] = terrainHeight; @@ -1333,7 +1352,7 @@ namespace MWWorld if (force || !isFlying(ptr)) { - Ogre::Vector3 traced = mPhysics->traceDown(ptr, 500); + Ogre::Vector3 traced;// = mPhysics->traceDown(ptr, 500); if (traced.z < pos.pos[2]) pos.pos[2] = traced.z; } @@ -1348,7 +1367,7 @@ namespace MWWorld pos.pos[2] += dist; actor.getRefData().setPosition(pos); - Ogre::Vector3 traced = mPhysics->traceDown(actor, dist*1.1f); + Ogre::Vector3 traced;// = mPhysics->traceDown(actor, dist*1.1f); moveObject(actor, actor.getCell(), traced.x, traced.y, traced.z); } @@ -1389,12 +1408,13 @@ namespace MWWorld void World::queueMovement(const Ptr &ptr, const Vector3 &velocity) { - mPhysics->queueObjectMovement(ptr, velocity); + //mPhysics->queueObjectMovement(ptr, velocity); } void World::doPhysics(float duration) { - mPhysics->stepSimulation(duration); +#if 0 + //mPhysics->stepSimulation(duration); processDoors(duration); @@ -1414,17 +1434,19 @@ namespace MWWorld } if(player != results.end()) moveObjectImp(player->first, player->second.x, player->second.y, player->second.z); +#endif } bool World::castRay (float x1, float y1, float z1, float x2, float y2, float z2) { Ogre::Vector3 a(x1,y1,z1); Ogre::Vector3 b(x2,y2,z2); - return mPhysics->castRay(a,b,false,true); + return 0;//mPhysics->castRay(a,b,false,true); } void World::processDoors(float duration) { +#if 0 std::map::iterator it = mDoorStates.begin(); while (it != mDoorStates.end()) { @@ -1475,16 +1497,17 @@ namespace MWWorld ++it; } } +#endif } bool World::toggleCollisionMode() { - return mPhysics->toggleCollisionMode(); + return 0;//mPhysics->toggleCollisionMode(); } bool World::toggleRenderMode (RenderMode mode) { - return mRendering->toggleRenderMode (mode); + return 0;//mRendering->toggleRenderMode (mode); } const ESM::Potion *World::createRecord (const ESM::Potion& record) @@ -1544,7 +1567,7 @@ namespace MWWorld } const ESM::NPC *ret = mStore.insert(record); if (update) { - mRendering->renderPlayer(mPlayer->getPlayer()); + //mRendering->renderPlayer(mPlayer->getPlayer()); } return ret; } @@ -1581,8 +1604,8 @@ namespace MWWorld updateWeather(duration, paused); - if (!paused) - doPhysics (duration); + //if (!paused) + // doPhysics (duration); mWorldScene->update (duration, paused); @@ -1625,7 +1648,7 @@ namespace MWWorld Ogre::AxisAlignedBox bounds = node->_getWorldAABB(); if (bounds.isFinite()) { - Vector4 screenCoords = mRendering->boundingBoxToScreen(bounds); + Vector4 screenCoords;// = mRendering->boundingBoxToScreen(bounds); MWBase::Environment::get().getWindowManager()->setFocusObjectScreenCoords( screenCoords[0], screenCoords[1], screenCoords[2], screenCoords[3]); } @@ -1634,6 +1657,7 @@ namespace MWWorld void World::performUpdateSceneQueries () { +#if 0 if (!mRendering->occlusionQuerySupported()) { // cast a ray from player to sun to detect if the sun is visible @@ -1643,22 +1667,23 @@ namespace MWWorld Vector3 sun = mRendering->getSkyManager()->getRealSunPos(); mRendering->getSkyManager()->setGlare(!mPhysics->castRay(Ogre::Vector3(p[0], p[1], p[2]), sun)); } +#endif } void World::getFacedHandle(std::string& facedHandle, float maxDistance, bool ignorePlayer) { - maxDistance += mRendering->getCameraDistance(); + //maxDistance += mRendering->getCameraDistance(); std::vector < std::pair < float, std::string > > results; if (MWBase::Environment::get().getWindowManager()->isGuiMode()) { float x, y; MWBase::Environment::get().getWindowManager()->getMousePosition(x, y); - results = mPhysics->getFacedHandles(x, y, maxDistance); + //results = mPhysics->getFacedHandles(x, y, maxDistance); } else { - results = mPhysics->getFacedHandles(maxDistance); + //results = mPhysics->getFacedHandles(maxDistance); } if (ignorePlayer && @@ -1697,17 +1722,17 @@ namespace MWWorld int World::getCurrentWeather() const { - return mWeatherManager->getWeatherID(); + return 0;//mWeatherManager->getWeatherID(); } void World::changeWeather(const std::string& region, const unsigned int id) { - mWeatherManager->changeWeather(region, id); + //mWeatherManager->changeWeather(region, id); } void World::modRegion(const std::string ®ionid, const std::vector &chances) { - mWeatherManager->modRegion(regionid, chances); + //mWeatherManager->modRegion(regionid, chances); } Ogre::Vector2 World::getNorthVector (CellStore* cell) @@ -1767,33 +1792,33 @@ namespace MWWorld void World::worldToInteriorMapPosition (Ogre::Vector2 position, float& nX, float& nY, int &x, int& y) { - mRendering->worldToInteriorMapPosition(position, nX, nY, x, y); + //mRendering->worldToInteriorMapPosition(position, nX, nY, x, y); } Ogre::Vector2 World::interiorMapToWorldPosition(float nX, float nY, int x, int y) { - return mRendering->interiorMapToWorldPosition(nX, nY, x, y); + return Ogre::Vector2();//mRendering->interiorMapToWorldPosition(nX, nY, x, y); } bool World::isPositionExplored (float nX, float nY, int x, int y, bool interior) { - return mRendering->isPositionExplored(nX, nY, x, y, interior); + return 0;//mRendering->isPositionExplored(nX, nY, x, y, interior); } void World::setWaterHeight(const float height) { - mPhysics->setWaterHeight(height); - mRendering->setWaterHeight(height); + //mPhysics->setWaterHeight(height); + //mRendering->setWaterHeight(height); } bool World::toggleWater() { - return mRendering->toggleWater(); + return 0;//mRendering->toggleWater(); } bool World::toggleWorld() { - return mRendering->toggleWorld(); + return 0;//mRendering->toggleWorld(); } void World::PCDropped (const Ptr& item) @@ -1807,7 +1832,7 @@ namespace MWWorld MWWorld::Ptr World::placeObject (const MWWorld::Ptr& object, float cursorX, float cursorY, int amount) { - std::pair result = mPhysics->castRay(cursorX, cursorY); + std::pair result;// = mPhysics->castRay(cursorX, cursorY); if (!result.first) return MWWorld::Ptr(); @@ -1838,7 +1863,7 @@ namespace MWWorld { Ogre::Vector3 normal(0,0,0); std::string handle; - std::pair result = mPhysics->castRay(cursorX, cursorY, &normal, &handle); + std::pair result;// = mPhysics->castRay(cursorX, cursorY, &normal, &handle); if (result.first) { @@ -1859,6 +1884,7 @@ namespace MWWorld Ptr World::copyObjectToCell(const Ptr &object, CellStore* cell, ESM::Position pos, bool adjustPos) { +#if 0 if (!object.getClass().isActor() && adjustPos) { // Adjust position so the location we wanted ends up in the middle of the object bounding box @@ -1879,6 +1905,7 @@ namespace MWWorld pos.pos[2] -= adjust.z; } } +#endif if (cell->isExterior()) { @@ -1926,12 +1953,12 @@ namespace MWWorld Ogre::Vector3 orig = Ogre::Vector3(pos.pos); orig.z += 20; - Ogre::Vector3 dir = Ogre::Vector3(0, 0, -1); + //Ogre::Vector3 dir = Ogre::Vector3(0, 0, -1); - float len = 100.0; + //float len = 100.0; - std::pair hit = - mPhysics->castRay(orig, dir, len); + std::pair hit;// = + //mPhysics->castRay(orig, dir, len); if (hit.first) pos.pos[2] = hit.second.z; @@ -1948,12 +1975,12 @@ namespace MWWorld void World::processChangedSettings(const Settings::CategorySettingVector& settings) { - mRendering->processChangedSettings(settings); + //mRendering->processChangedSettings(settings); } void World::getTriangleBatchCount(unsigned int &triangles, unsigned int &batches) { - mRendering->getTriangleBatchCount(triangles, batches); + //mRendering->getTriangleBatchCount(triangles, batches); } bool World::isFlying(const MWWorld::Ptr &ptr) const @@ -2072,12 +2099,12 @@ namespace MWWorld bool World::vanityRotateCamera(float * rot) { - return mRendering->vanityRotateCamera(rot); + return 0;//mRendering->vanityRotateCamera(rot); } void World::setCameraDistance(float dist, bool adjust, bool override_) { - return mRendering->setCameraDistance(dist, adjust, override_); + //mRendering->setCameraDistance(dist, adjust, override_); } void World::setupPlayer() @@ -2093,13 +2120,13 @@ namespace MWWorld mPlayer->set(player); } - Ptr ptr = mPlayer->getPlayer(); - mRendering->setupPlayer(ptr); + //Ptr ptr = mPlayer->getPlayer(); + //mRendering->setupPlayer(ptr); } void World::renderPlayer() { - mRendering->renderPlayer(mPlayer->getPlayer()); + //mRendering->renderPlayer(mPlayer->getPlayer()); // At this point the Animation object is live, and the CharacterController associated with it must be created. // It has to be done at this point: resetCamera below does animation->setViewMode -> CharacterController::forceStateUpdate @@ -2107,8 +2134,8 @@ namespace MWWorld MWBase::Environment::get().getMechanicsManager()->add(mPlayer->getPlayer()); std::string model = getPlayerPtr().getClass().getModel(getPlayerPtr()); - model = Misc::ResourceHelpers::correctActorModelPath(model); - mPhysics->addActor(mPlayer->getPlayer(), model); + //model = Misc::ResourceHelpers::correctActorModelPath(model); + //mPhysics->addActor(mPlayer->getPlayer(), model); } int World::canRest () @@ -2134,17 +2161,17 @@ namespace MWWorld MWRender::Animation* World::getAnimation(const MWWorld::Ptr &ptr) { - return mRendering->getAnimation(ptr); + return 0;//return mRendering->getAnimation(ptr); } void World::frameStarted (float dt, bool paused) { - mRendering->frameStarted(dt, paused); + //mRendering->frameStarted(dt, paused); } void World::screenshot(Ogre::Image &image, int w, int h) { - mRendering->screenshot(image, w, h); + //mRendering->screenshot(image, w, h); } void World::activateDoor(const MWWorld::Ptr& door) @@ -2180,27 +2207,27 @@ namespace MWWorld bool World::getPlayerStandingOn (const MWWorld::Ptr& object) { - MWWorld::Ptr player = getPlayerPtr(); - return mPhysics->isActorStandingOn(player, object); + //MWWorld::Ptr player = getPlayerPtr(); + return 0;//mPhysics->isActorStandingOn(player, object); } bool World::getActorStandingOn (const MWWorld::Ptr& object) { std::vector actors; - mPhysics->getActorsStandingOn(object, actors); + //mPhysics->getActorsStandingOn(object, actors); return !actors.empty(); } bool World::getPlayerCollidingWith (const MWWorld::Ptr& object) { - MWWorld::Ptr player = getPlayerPtr(); - return mPhysics->isActorCollidingWith(player, object); + //MWWorld::Ptr player = getPlayerPtr(); + return 0;//mPhysics->isActorCollidingWith(player, object); } bool World::getActorCollidingWith (const MWWorld::Ptr& object) { std::vector actors; - mPhysics->getActorsCollidingWith(object, actors); + //mPhysics->getActorsCollidingWith(object, actors); return !actors.empty(); } @@ -2210,7 +2237,7 @@ namespace MWWorld return; std::vector actors; - mPhysics->getActorsStandingOn(object, actors); + //mPhysics->getActorsStandingOn(object, actors); for (std::vector::iterator it = actors.begin(); it != actors.end(); ++it) { MWWorld::Ptr actor = searchPtrViaHandle(*it); // Collision events are from the last frame, actor might no longer exist @@ -2241,7 +2268,7 @@ namespace MWWorld return; std::vector actors; - mPhysics->getActorsCollidingWith(object, actors); + //mPhysics->getActorsCollidingWith(object, actors); for (std::vector::iterator it = actors.begin(); it != actors.end(); ++it) { MWWorld::Ptr actor = searchPtrViaHandle(*it); // Collision events are from the last frame, actor might no longer exist @@ -2269,7 +2296,7 @@ namespace MWWorld float World::getWindSpeed() { if (isCellExterior() || isCellQuasiExterior()) - return mWeatherManager->getWindSpeed(); + return 0;//mWeatherManager->getWindSpeed(); else return 0.f; } @@ -2277,7 +2304,7 @@ namespace MWWorld bool World::isInStorm() const { if (isCellExterior() || isCellQuasiExterior()) - return mWeatherManager->isInStorm(); + return 0;//mWeatherManager->isInStorm(); else return false; } @@ -2285,7 +2312,7 @@ namespace MWWorld Ogre::Vector3 World::getStormDirection() const { if (isCellExterior() || isCellQuasiExterior()) - return mWeatherManager->getStormDirection(); + return Ogre::Vector3();//mWeatherManager->getStormDirection(); else return Ogre::Vector3(0,1,0); } @@ -2479,7 +2506,7 @@ namespace MWWorld void World::reattachPlayerCamera() { - mRendering->rebuildPtr(getPlayerPtr()); + //mRendering->rebuildPtr(getPlayerPtr()); } void World::setWerewolf(const MWWorld::Ptr& actor, bool werewolf) @@ -2512,7 +2539,7 @@ namespace MWWorld // NpcAnimation::updateParts will already rebuild the animation when it detects change of Npc type. // the following is just for reattaching the camera properly. - mRendering->rebuildPtr(actor); + //mRendering->rebuildPtr(actor); if(actor == getPlayerPtr()) { @@ -2684,6 +2711,7 @@ namespace MWWorld { // For NPCs use facing direction from Head node Ogre::Vector3 origin(actor.getRefData().getPosition().pos); +#if 0 MWRender::Animation *anim = mRendering->getAnimation(actor); if(anim != NULL) { @@ -2693,6 +2721,7 @@ namespace MWWorld if(node != NULL) origin += node->_getDerivedPosition(); } +#endif Ogre::Quaternion orient; orient = Ogre::Quaternion(Ogre::Radian(actor.getRefData().getPosition().rot[2]), Ogre::Vector3::NEGATIVE_UNIT_Z) * Ogre::Quaternion(Ogre::Radian(actor.getRefData().getPosition().rot[0]), Ogre::Vector3::NEGATIVE_UNIT_X); @@ -2739,14 +2768,18 @@ namespace MWWorld void World::launchProjectile (MWWorld::Ptr actor, MWWorld::Ptr projectile, const Ogre::Vector3& worldPos, const Ogre::Quaternion& orient, MWWorld::Ptr bow, float speed) { +#if 0 mProjectileManager->launchProjectile(actor, projectile, worldPos, orient, bow, speed); +#endif } void World::launchMagicBolt (const std::string& model, const std::string &sound, const std::string &spellId, float speed, bool stack, const ESM::EffectList& effects, const MWWorld::Ptr& caster, const std::string& sourceName, const Ogre::Vector3& fallbackDirection) { +#if 0 mProjectileManager->launchMagicBolt(model, sound, spellId, speed, stack, effects, caster, sourceName, fallbackDirection); +#endif } const std::vector& World::getContentFiles() const @@ -2768,7 +2801,7 @@ namespace MWWorld { MWWorld::CellStore* cell = mPlayer->getPlayer().getCell(); if (cell->isExterior()) - return mWeatherManager->isDark(); + return 0;//mWeatherManager->isDark(); else { uint32_t ambient = cell->getCell()->mAmbi.mAmbient; @@ -2933,10 +2966,10 @@ namespace MWWorld if (mPlayer->wasTeleported()) { mPlayer->setTeleported(false); - mWeatherManager->switchToNextWeather(true); + //mWeatherManager->switchToNextWeather(true); } - mWeatherManager->update(duration, paused); + //mWeatherManager->update(duration, paused); } struct AddDetectedReference @@ -3190,12 +3223,12 @@ namespace MWWorld modelName << roll; std::string model = "meshes\\" + getFallback()->getFallbackString(modelName.str()); - mRendering->spawnEffect(model, texture, worldPosition); + //mRendering->spawnEffect(model, texture, worldPosition); } void World::spawnEffect(const std::string &model, const std::string &textureOverride, const Vector3 &worldPos) { - mRendering->spawnEffect(model, textureOverride, worldPos); + //mRendering->spawnEffect(model, textureOverride, worldPos); } void World::explodeSpell(const Vector3 &origin, const ESM::EffectList &effects, const Ptr &caster, ESM::RangeType rangeType, @@ -3211,6 +3244,7 @@ namespace MWWorld continue; // Not an area effect // Spawn the explosion orb effect + /* const ESM::Static* areaStatic; if (!effect->mCasting.empty()) areaStatic = getStore().get().find (effect->mArea); @@ -3218,6 +3252,7 @@ namespace MWWorld areaStatic = getStore().get().find ("VFX_DefaultArea"); mRendering->spawnEffect("meshes\\" + areaStatic->mModel, "", origin, static_cast(effectIt->mArea)); + */ // Play explosion sound (make sure to use NoTrack, since we will delete the projectile now) static const std::string schools[] = { diff --git a/apps/openmw/mwworld/worldimp.hpp b/apps/openmw/mwworld/worldimp.hpp index 63d6506de..07698aae5 100644 --- a/apps/openmw/mwworld/worldimp.hpp +++ b/apps/openmw/mwworld/worldimp.hpp @@ -8,7 +8,7 @@ #include "ptr.hpp" #include "scene.hpp" #include "esmstore.hpp" -#include "physicssystem.hpp" +//#include "physicssystem.hpp" #include "cells.hpp" #include "localscripts.hpp" #include "timestamp.hpp" @@ -19,6 +19,8 @@ #include "contentloader.hpp" +#include + namespace Ogre { class Vector3; @@ -62,7 +64,7 @@ namespace MWWorld MWWorld::Fallback mFallback; MWRender::RenderingManager* mRendering; - MWWorld::WeatherManager* mWeatherManager; + //MWWorld::WeatherManager* mWeatherManager; MWWorld::Scene *mWorldScene; MWWorld::Player *mPlayer; @@ -152,7 +154,7 @@ namespace MWWorld public: - World (OEngine::Render::OgreRenderer& renderer, + World ( const Files::Collections& fileCollections, const std::vector& contentFiles, const boost::filesystem::path& resDir, const boost::filesystem::path& cacheDir, @@ -465,31 +467,31 @@ namespace MWWorld virtual bool isOnGround(const MWWorld::Ptr &ptr) const; virtual void togglePOV() { - mRendering->togglePOV(); + //mRendering->togglePOV(); } virtual bool isFirstPerson() const { - return mRendering->getCamera()->isFirstPerson(); + return 0;//mRendering->getCamera()->isFirstPerson(); } virtual void togglePreviewMode(bool enable) { - mRendering->togglePreviewMode(enable); + //mRendering->togglePreviewMode(enable); } virtual bool toggleVanityMode(bool enable) { - return mRendering->toggleVanityMode(enable); + return 0;//mRendering->toggleVanityMode(enable); } virtual void allowVanityMode(bool allow) { - mRendering->allowVanityMode(allow); + //mRendering->allowVanityMode(allow); } virtual void togglePlayerLooking(bool enable) { - mRendering->togglePlayerLooking(enable); + //mRendering->togglePlayerLooking(enable); } virtual void changeVanityModeScale(float factor) { - mRendering->changeVanityModeScale(factor); + //mRendering->changeVanityModeScale(factor); } virtual bool vanityRotateCamera(float * rot); diff --git a/cmake/FindMyGUI.cmake b/cmake/FindMyGUI.cmake index 40fa2373f..b5c4e8ade 100644 --- a/cmake/FindMyGUI.cmake +++ b/cmake/FindMyGUI.cmake @@ -67,11 +67,11 @@ ELSE (WIN32) #Unix SET(MYGUI_INCLUDE_DIRS ${MYGUI_INCLUDE_DIRS}) SET(MYGUI_LIB_DIR ${MYGUI_LIBDIR}) SET(MYGUI_LIBRARIES ${MYGUI_LIBRARIES} CACHE STRING "") - SET(MYGUI_PLATFORM_LIBRARIES "MyGUI.OgrePlatform") + SET(MYGUI_PLATFORM_LIBRARIES "MyGUI.DummyPlatform") ELSE (MYGUI_INCLUDE_DIRS) FIND_PATH(MYGUI_INCLUDE_DIRS MyGUI.h PATHS /usr/local/include /usr/include PATH_SUFFIXES MyGUI MYGUI) FIND_LIBRARY(MYGUI_LIBRARIES myguistatic PATHS /usr/lib /usr/local/lib) - SET(MYGUI_PLATFORM_LIBRARIES "MyGUI.OgrePlatform") + SET(MYGUI_PLATFORM_LIBRARIES "MyGUI.DummyPlatform") SET(MYGUI_LIB_DIR ${MYGUI_LIBRARIES}) STRING(REGEX REPLACE "(.*)/.*" "\\1" MYGUI_LIB_DIR "${MYGUI_LIB_DIR}") STRING(REGEX REPLACE ".*/" "" MYGUI_LIBRARIES "${MYGUI_LIBRARIES}") @@ -81,7 +81,7 @@ ELSE (WIN32) #Unix FIND_PACKAGE(freetype) FIND_PATH(MYGUI_INCLUDE_DIRS MyGUI.h PATHS /usr/local/include /usr/include PATH_SUFFIXES MyGUI MYGUI) FIND_LIBRARY(MYGUI_LIBRARIES MyGUIEngineStatic PATHS /usr/lib /usr/local/lib) - SET(MYGUI_PLATFORM_LIBRARIES "MyGUI.OgrePlatform") + SET(MYGUI_PLATFORM_LIBRARIES "MyGUI.DummyPlatform") SET(MYGUI_LIB_DIR ${MYGUI_LIBRARIES}) STRING(REGEX REPLACE "(.*)/.*" "\\1" MYGUI_LIB_DIR "${MYGUI_LIB_DIR}") STRING(REGEX REPLACE ".*/" "" MYGUI_LIBRARIES "${MYGUI_LIBRARIES}") @@ -92,11 +92,11 @@ ELSE (WIN32) #Unix SET(MYGUI_INCLUDE_DIRS ${MYGUI_INCLUDE_DIRS}) SET(MYGUI_LIB_DIR ${MYGUI_LIBDIR}) SET(MYGUI_LIBRARIES ${MYGUI_LIBRARIES} CACHE STRING "") - SET(MYGUI_PLATFORM_LIBRARIES "MyGUI.OgrePlatform") + SET(MYGUI_PLATFORM_LIBRARIES "MyGUI.DummyPlatform") ELSE (MYGUI_INCLUDE_DIRS) FIND_PATH(MYGUI_INCLUDE_DIRS MyGUI.h PATHS /usr/local/include /usr/include PATH_SUFFIXES MyGUI MYGUI) FIND_LIBRARY(MYGUI_LIBRARIES mygui PATHS /usr/lib /usr/local/lib) - SET(MYGUI_PLATFORM_LIBRARIES "MyGUI.OgrePlatform") + SET(MYGUI_PLATFORM_LIBRARIES "MyGUI.DummyPlatform") SET(MYGUI_LIB_DIR ${MYGUI_LIBRARIES}) STRING(REGEX REPLACE "(.*)/.*" "\\1" MYGUI_LIB_DIR "${MYGUI_LIB_DIR}") STRING(REGEX REPLACE ".*/" "" MYGUI_LIBRARIES "${MYGUI_LIBRARIES}") diff --git a/components/CMakeLists.txt b/components/CMakeLists.txt index 9d9ae4f31..1debf3495 100644 --- a/components/CMakeLists.txt +++ b/components/CMakeLists.txt @@ -26,10 +26,6 @@ add_component_dir (settings settings ) -add_component_dir (nifoverrides - nifoverrides - ) - add_component_dir (bsa bsa_file ) diff --git a/components/esm/esmreader.cpp b/components/esm/esmreader.cpp index 933d89099..87c000d9a 100644 --- a/components/esm/esmreader.cpp +++ b/components/esm/esmreader.cpp @@ -25,6 +25,7 @@ ESMReader::ESMReader() , mIdx(0) , mGlobalReaderList(NULL) , mEncoder(NULL) + , mFileSize(0) { } @@ -64,7 +65,7 @@ void ESMReader::openRaw(Files::IStreamPtr _esm, const std::string& name) mEsm = _esm; mCtx.filename = name; mEsm->seekg(0, mEsm->end); - mCtx.leftFile = mEsm->tellg(); + mCtx.leftFile = mFileSize = mEsm->tellg(); mEsm->seekg(0, mEsm->beg); } diff --git a/components/esm/esmreader.hpp b/components/esm/esmreader.hpp index 89062bd27..709008a90 100644 --- a/components/esm/esmreader.hpp +++ b/components/esm/esmreader.hpp @@ -261,6 +261,8 @@ public: /// Get record flags of last record unsigned int getRecordFlags() { return mRecordFlags; } + size_t getFileSize() const { return mFileSize; } + private: Files::IStreamPtr mEsm; @@ -277,6 +279,9 @@ private: std::vector *mGlobalReaderList; ToUTF8::Utf8Encoder* mEncoder; + + size_t mFileSize; + }; } #endif diff --git a/components/fontloader/fontloader.cpp b/components/fontloader/fontloader.cpp index eb7dd901d..1b61aea90 100644 --- a/components/fontloader/fontloader.cpp +++ b/components/fontloader/fontloader.cpp @@ -147,6 +147,7 @@ namespace Gui void FontLoader::loadAllFonts(bool exportToFile) { + /* Ogre::StringVector groups = Ogre::ResourceGroupManager::getSingleton().getResourceGroups (); for (Ogre::StringVector::iterator it = groups.begin(); it != groups.end(); ++it) { @@ -156,6 +157,7 @@ namespace Gui loadFont(*resource, exportToFile); } } + */ } diff --git a/components/nifoverrides/nifoverrides.cpp b/components/nifoverrides/nifoverrides.cpp deleted file mode 100644 index 972cf1b84..000000000 --- a/components/nifoverrides/nifoverrides.cpp +++ /dev/null @@ -1,80 +0,0 @@ -#include "nifoverrides.hpp" - -#include - -#include <../components/misc/stringops.hpp> - -#include "../extern/shiny/Main/MaterialInstance.hpp" - -#include - - -using namespace NifOverrides; - -Overrides::TransparencyOverrideMap Overrides::mTransparencyOverrides = Overrides::TransparencyOverrideMap(); -Overrides::MaterialOverrideMap Overrides::mMaterialOverrides = Overrides::MaterialOverrideMap(); - -void Overrides::loadTransparencyOverrides (const std::string& file) -{ - Ogre::ConfigFile cf; - cf.load(file); - - Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); - while (seci.hasMoreElements()) - { - Ogre::String sectionName = seci.peekNextKey(); - mTransparencyOverrides[sectionName] = - Ogre::StringConverter::parseInt(cf.getSetting("alphaRejectValue", sectionName)); - seci.getNext(); - } -} - -void Overrides::loadMaterialOverrides(const std::string &file) -{ - Ogre::ConfigFile cf; - cf.load(file); - - Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator(); - while (seci.hasMoreElements()) - { - Ogre::String sectionName = seci.peekNextKey(); - - Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext(); - Ogre::ConfigFile::SettingsMultiMap::iterator i; - std::map overrides; - for (i = settings->begin(); i != settings->end(); ++i) - { - overrides[i->first] = i->second; - } - mMaterialOverrides[sectionName] = overrides; - } - -} - -TransparencyResult Overrides::getTransparencyOverride(const std::string& texture) -{ - TransparencyResult result; - result.first = false; - - TransparencyOverrideMap::iterator it = mTransparencyOverrides.find(Misc::StringUtils::lowerCase(texture)); - if (it != mTransparencyOverrides.end()) - { - result.first = true; - result.second = it->second; - } - - return result; -} - -void Overrides::getMaterialOverrides(const std::string &texture, sh::MaterialInstance* material) -{ - MaterialOverrideMap::iterator it = mMaterialOverrides.find(Misc::StringUtils::lowerCase(texture)); - if (it != mMaterialOverrides.end()) - { - const std::map& overrides = it->second; - for (std::map::const_iterator it = overrides.begin(); it != overrides.end(); ++it) - { - material->setProperty(it->first, sh::makeProperty(it->second)); - } - } -} diff --git a/components/nifoverrides/nifoverrides.hpp b/components/nifoverrides/nifoverrides.hpp deleted file mode 100644 index edff876d4..000000000 --- a/components/nifoverrides/nifoverrides.hpp +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef OPENMW_COMPONENTS_NIFOVERRIDES_NIFOVERRIDES_HPP -#define OPENMW_COMPONENTS_NIFOVERRIDES_NIFOVERRIDES_HPP - -#include - -namespace sh -{ - class MaterialInstance; -} - -namespace NifOverrides -{ - - typedef std::pair TransparencyResult; - - /// Allows to provide overrides for some material properties in NIF files. - /// NIFs are a bit limited in that they don't allow specifying a material externally, which is - /// painful for texture modding. - /// We also use this to patch up transparency settings in certain NIFs that bethesda has chosen poorly. - class Overrides - { - public: - typedef std::map TransparencyOverrideMap; - static TransparencyOverrideMap mTransparencyOverrides; - - typedef std::map > MaterialOverrideMap; - static MaterialOverrideMap mMaterialOverrides; - - void loadTransparencyOverrides (const std::string& file); - void loadMaterialOverrides (const std::string& file); - - static TransparencyResult getTransparencyOverride(const std::string& texture); - static void getMaterialOverrides (const std::string& texture, sh::MaterialInstance* instance); - }; - -} - -#endif diff --git a/files/transparency-overrides.cfg b/files/transparency-overrides.cfg deleted file mode 100644 index 65f9b477a..000000000 --- a/files/transparency-overrides.cfg +++ /dev/null @@ -1,623 +0,0 @@ -# Bethesda has used wrong transparency settings for many textures -# (who would have guessed) -# This is very unfortunate because objects with real transparency: -# - cannot cast shadows -# - cannot receive advanced framebuffer effects like depth of field or ambient occlusion -# - cannot cover lens flare effects (the lens flare will just shine through) - -# This file lists textures that should be using alpha rejection instead of transparency -# basically these are textures that are not translucent (i.e. at one spot on the texture, either transparent or opaque) - -# Note: all the texture names here have to be lowercase - -# fauna -[textures\tx_wickwheat_01.dds] - alphaRejectValue = 128 - -[textures\tx_wickwheat_03.dds] - alphaRejectValue = 128 - -[textures\tx_red_lichen_01.dds] - alphaRejectValue = 128 - -[textures\tx_stone_flower_01.dds] - alphaRejectValue = 128 - -[textures\tx_ivy_02.dds] - alphaRejectValue = 128 - -[textures\tx_ivy_01.dds] - alphaRejectValue = 128 - -[textures\tx_saltrice_04.dds] - alphaRejectValue = 128 - -[textures\tx_black_lichen_01.dds] - alphaRejectValue = 128 - -[textures\tx_leaves_01.dds] - alphaRejectValue = 128 - -[textures\tx_leaves_02.dds] - alphaRejectValue = 128 - -[textures\tx_leaves_03.dds] - alphaRejectValue = 128 - -[textures\tx_leaves_04.dds] - alphaRejectValue = 128 - -[textures\tx_leaves_06.dds] - alphaRejectValue = 128 - -[textures\tx_leaves_07.dds] - alphaRejectValue = 128 - -[textures\tx_ai_heather_01.dds] - alphaRejectValue = 96 - -[textures\tx_goldkanet_01.dds] - alphaRejectValue = 128 - -[textures\tx_goldkanet_02.dds] - alphaRejectValue = 128 - -[textures\tx_plant_tails00.dds] - alphaRejectValue = 128 - -[textures\tx_vine_01.dds] - alphaRejectValue = 128 - -[textures\tx_comberry_01.dds] - alphaRejectValue = 128 - -[textures\tx_willow_flower_02.dds] - alphaRejectValue = 128 - -[textures\tx_cork_bulb_02.dds] - alphaRejectValue = 128 - -[textures\tx_green_lichen_01.dds] - alphaRejectValue = 128 - -[textures\tx_roobrush_01.dds] - alphaRejectValue = 128 - -[textures\tx_bittergreen_02.dds] - alphaRejectValue = 128 - -[textures\tx_chokeweed_01.dds] - alphaRejectValue = 128 - -[textures\tx_branches_01.dds] - alphaRejectValue = 128 - -[textures\tx_branches_02.dds] - alphaRejectValue = 128 - -[textures\tx_guarskin_hut_03.dds] - alphaRejectValue = 128 - -[textures\tx_hackle-lo_02.dds] - alphaRejectValue = 128 - -[textures\tx_bc_fern_01.dds] - alphaRejectValue = 128 - -[textures\tx_bc_fern_02.dds] - alphaRejectValue = 128 - -[textures\tx_bc_leaves_02.dds] - alphaRejectValue = 128 - -[textures\tx_marshmerrow_03.dds] - alphaRejectValue = 128 - -[textures\tx_bc_moss_01.dds] - alphaRejectValue = 128 - -[textures\tx_bc_moss_02.dds] - alphaRejectValue = 128 - -[textures\tx_bc_lilypad_01.dds] - alphaRejectValue = 128 - -[textures\tx_bc_lilypad_02.dds] - alphaRejectValue = 128 - -[textures\tx_bc_lilypad_03.dds] - alphaRejectValue = 128 - -[textures\tx_fire_fern_01.dds] - alphaRejectValue = 128 - -# banners and flags -[textures\tx_flag_imp_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_arena_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_comfort_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_child_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_count_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_faith_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_walk_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_imp_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_redoran_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_avs_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_serving_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_speak_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_stdeyln_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_stolms_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_thin_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_vivec_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_vivec_02.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_banner_01.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_banner_02.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_banner_04.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_banner_05.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_banner_06.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_banner_07.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_a_banner.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_e_banner.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_u_banner.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_z_banner.dds] - alphaRejectValue = 128 - -[textures\tx_banner_6th.dds] - alphaRejectValue = 128 - -[textures\tx_banner_6th_tall.dds] - alphaRejectValue = 128 - -[textures\tx_banner_gnisis_01.dds] - alphaRejectValue = 128 - -[textures\tx_banner_gnisis_02.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_bhm_01.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_02.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_03.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_04.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_05.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_06.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_07.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_08.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_08.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_09.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_10.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_11.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_12.dds] - alphaRejectValue = 128 - -[textures\tx_de_tapestry_13.dds] - alphaRejectValue = 128 - -[textures\tx_de_lutestrings_01.dds] - alphaRejectValue = 128 - -[textures\tx_fabric_imp_altar_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_akatosh_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_apprentice_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_arkay_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_dibella_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_golem_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_julianos_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_kynareth_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_lady_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_lord_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_lover_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_mara_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_ritual_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_shadow_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_steed_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_stendarr_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_thief_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_tower_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_warrior_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_wizard_01.dds] - alphaRejectValue = 128 - -[textures\tx_c_t_zenithar_01.dds] - alphaRejectValue = 128 - -[textures\tx_banner_dagoth_01.dds] - alphaRejectValue = 128 - -[textures\tx_bannerd_tavern_01.dds] - alphaRejectValue = 128 - -[textures\tx_bannerd_goods_01.dds] - alphaRejectValue = 128 - -[textures\tx_bannerd_danger_01.dds] - alphaRejectValue = 128 - -[textures\tx_bannerd_welcome_01.dds] - alphaRejectValue = 128 - -[textures\tx_bannerd_clothing_01.dds] - alphaRejectValue = 128 - -[textures\tx_bannerd_alchemy_01.dds] - alphaRejectValue = 128 - -[textures\tx_banner_hlaalu_01.dds] - alphaRejectValue = 128 - -[textures\tx_banner_redoran_01.dds] - alphaRejectValue = 128 - -[textures\tx_banner_temple_01.dds] - alphaRejectValue = 128 - -[textures\tx_banner_temple_03.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_book_01.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_ald_velothi.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_gnaar_mok.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_hla_oad.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_khull.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_pawn_01.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_sadrith_mora.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_tel_aruhn.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_tel_branora.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_tel_fyr.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_tel_mora.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_telvani_01.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_tel_vos.dds] - alphaRejectValue = 128 - -[textures\tx_de_banner_vos.dds] - alphaRejectValue = 128 - -[textures\tx_bannerd_w_a_shop_01.dds] - alphaRejectValue = 128 - -[textures\tx_banner_temple_02.dds] - alphaRejectValue = 128 - -[textures\tx_mural1_00.dds] - alphaRejectValue = 128 - -[textures\tx_mural1_01.dds] - alphaRejectValue = 128 - -[textures\tx_mural4_00.dds] - alphaRejectValue = 128 - -[textures\tx_mural4_01.dds] - alphaRejectValue = 128 - -[textures\tx_mural5_00.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_telvanni_01.dds] - alphaRejectValue = 128 - -[textures\tx_v_b_hlaalu_01.dds] - alphaRejectValue = 128 - -[textures\tx_fabric_tapestry.dds] - alphaRejectValue = 128 - -[textures\tx_fabric_tapestry_01.dds] - alphaRejectValue = 128 - -[textures\tx_fabric_tapestry_02.dds] - alphaRejectValue = 128 - -[textures\tx_fabric_tapestry_03.dds] - alphaRejectValue = 128 - -[textures\tx_fabric_tapestry_04.dds] - alphaRejectValue = 128 - -# characters -[textures\tx_netchgod00.dds] - alphaRejectValue = 128 - -[textures\tx_b_n_argonian_f_hair02.dds] - alphaRejectValue = 128 - -[textures\tx_b_n_argonian_f_hair03.dds] - alphaRejectValue = 128 - -[textures\tx_b_n_argonian_m_hair01.dds] - alphaRejectValue = 128 - -[textures\tx_b_n_argonian_m_hair04.dds] - alphaRejectValue = 128 - -[textures\tx_b_n_argonian_m_hair05.dds] - alphaRejectValue = 128 - -[textures\tx_b_n_khajiit_f_hair01.dds] - alphaRejectValue = 128 - -[textures\tx_b_n_khajiit_f_hair02.dds] - alphaRejectValue = 128 - -[textures\tx_b_n_khajiit_m_hair01.dds] - alphaRejectValue = 128 - -[textures\tx_corprus_stalker12.dds] - alphaRejectValue = 128 - -[textures\tx_a_clavicus02.dds] - alphaRejectValue = 128 - -[textures\tx_b_n_dark elf_m_hair11.dds] - alphaRejectValue = 128 - -[textures\tx_b_n_dark elf_f_hair10.dds] - alphaRejectValue = 128 - -# misc items -[textures\tx_sail.dds] - alphaRejectValue = 128 - -[textures\tx_longboatsail01.dds] - alphaRejectValue = 128 - -[textures\tx_longboatsail01a.dds] - alphaRejectValue = 128 - -[textures\tx_longboatsail01b.dds] - alphaRejectValue = 128 - -[textures\tx_longboatsail02.dds] - alphaRejectValue = 128 - -[textures\tx_quill.dds] - alphaRejectValue = 128 - -[textures\tx_note_01.dds] - alphaRejectValue = 128 - -[textures\tx_note_02.dds] - alphaRejectValue = 128 - -[textures\tx_parchment_02.dds] - alphaRejectValue = 128 - -[textures\tx_parchment_03.dds] - alphaRejectValue = 128 - -[textures\tx_scroll_01.dds] - alphaRejectValue = 128 - -[textures\tx_scroll_02.dds] - alphaRejectValue = 128 - -[textures\tx_scroll_03.dds] - alphaRejectValue = 128 - -[textures\tx_alpha_small_edge.dds] - alphaRejectValue = 128 - -[textures\tx_alpha_shadow_circular.dds] - alphaRejectValue = 128 - -# building materials -[textures\tx_shack_thatch_strip.dds] - alphaRejectValue = 128 - -[textures\tx_rug00.dds] - alphaRejectValue = 128 - -[textures\tx_rug_02.dds] - alphaRejectValue = 128 - -[textures\tx_rug_edge_01.dds] - alphaRejectValue = 128 - -[textures\tx_awning_thatch_02.dds] - alphaRejectValue = 128 - -[textures\tx_awning_woven_01.dds] - alphaRejectValue = 128 - -[textures\tx_bridgeropes.dds] - alphaRejectValue = 128 - -[textures\tx_rope_woven_01.dds] - alphaRejectValue = 128 - -[textures\tx_rope_woven_02.dds] - alphaRejectValue = 128 - -[textures\tx_ashl_tent_06.dds] - alphaRejectValue = 128 - -[textures\tx_guar_tarp.dds] - alphaRejectValue = 128 - -[textures\tx_velothi_glyph00.dds] - alphaRejectValue = 128 - - - -# Bloodmoon - -[textures\tx_bm_holly_01.dds] - alphaRejectValue = 128 - -[textures\tx_bm_holly_snow_01.dds] - alphaRejectValue = 128 - -[textures\tx_bm_pine_04a.dds] - alphaRejectValue = 128 - -[textures\tx_bm_pine_03a.dds] - alphaRejectValue = 128 - -[textures\tx_bm_pine_02a.dds] - alphaRejectValue = 128 - -[textures\tx_bm_pine_01a.dds] - alphaRejectValue = 128 - -[textures\tx_bm_shrub_02.dds] - alphaRejectValue = 128 - -[textures\tx_bm_shrub_01.dds] - alphaRejectValue = 128 - -[textures\tx_bm_snow_pine_01a.dds] - alphaRejectValue = 128 - -[textures\tx_bm_snow_pine_02a.dds] - alphaRejectValue = 128 - -[textures\tx_bm_snow_pine_03a.dds] - alphaRejectValue = 128 - -[textures\tx_bm_snow_pine_04a.dds] - alphaRejectValue = 128 - -[textures\tx_bm_deadpine_01.dds] - alphaRejectValue = 128 - -[textures\tx_bm_shrub_snow_02.dds] - alphaRejectValue = 128 - -[textures\tx_bm_s_deadpine_01.dds] - alphaRejectValue = 128 diff --git a/libs/openengine/CMakeLists.txt b/libs/openengine/CMakeLists.txt index 3542becf6..492a6323b 100644 --- a/libs/openengine/CMakeLists.txt +++ b/libs/openengine/CMakeLists.txt @@ -1,12 +1,12 @@ set(OENGINE_OGRE - ogre/renderer.cpp + #ogre/renderer.cpp ogre/lights.cpp ogre/selectionbuffer.cpp ) set(OENGINE_GUI gui/loglistener.cpp - gui/manager.cpp + #gui/manager.cpp gui/layout.cpp )