diff --git a/apps/openmw/mwrender/renderingmanager.hpp b/apps/openmw/mwrender/renderingmanager.hpp index d71a712294..01decf57ca 100644 --- a/apps/openmw/mwrender/renderingmanager.hpp +++ b/apps/openmw/mwrender/renderingmanager.hpp @@ -72,7 +72,7 @@ class RenderingManager: private RenderingInterface { void toggleLight(); bool toggleRenderMode(int mode); - + OEngine::Render::Fader* getFader(); void removeCell (MWWorld::Ptr::CellStore *store); @@ -83,7 +83,7 @@ class RenderingManager: private RenderingInterface { void waterAdded(MWWorld::Ptr::CellStore *store); void removeWater(); - + void preCellChange (MWWorld::Ptr::CellStore* store); ///< this event is fired immediately before changing cell @@ -102,7 +102,7 @@ class RenderingManager: private RenderingInterface { void moveObjectToCell (const MWWorld::Ptr& ptr, const Ogre::Vector3& position, MWWorld::Ptr::CellStore *store); void update (float duration); - + void setAmbientColour(const Ogre::ColourValue& colour); void setSunColour(const Ogre::ColourValue& colour); void setSunDirection(const Ogre::Vector3& direction); @@ -124,13 +124,13 @@ class RenderingManager: private RenderingInterface { void requestMap (MWWorld::Ptr::CellStore* cell); ///< request the local map for a cell - + /// configure fog according to cell void configureFog(ESMS::CellStore &mCell); - + /// configure fog manually void configureFog(const float density, const Ogre::ColourValue& colour); - + void playAnimationGroup (const MWWorld::Ptr& ptr, const std::string& groupName, int mode, int number = 1); ///< Run animation for a MW-reference. Calls to this function for references that are currently not diff --git a/apps/openmw/mwrender/terrain.cpp b/apps/openmw/mwrender/terrain.cpp index ac60e63238..8877215653 100644 --- a/apps/openmw/mwrender/terrain.cpp +++ b/apps/openmw/mwrender/terrain.cpp @@ -14,7 +14,7 @@ namespace MWRender { //---------------------------------------------------------------------------------------------- - + TerrainManager::TerrainManager(Ogre::SceneManager* mgr, const MWWorld::Environment& evn) : mEnvironment(evn), mTerrainGroup(TerrainGroup(mgr, Terrain::ALIGN_X_Z, mLandSize, mWorldSize)) { @@ -42,7 +42,7 @@ namespace MWRender //due to the sudden flick between composite and non composite textures, //this seemed the distance where it wasn't too noticeable mTerrainGlobals.setCompositeMapDistance(mWorldSize*2); - + mActiveProfile->setLightmapEnabled(false); mActiveProfile->setLayerSpecularMappingEnabled(false); mActiveProfile->setLayerNormalMappingEnabled(false); @@ -73,16 +73,16 @@ namespace MWRender TerrainManager::~TerrainManager() { } - + //---------------------------------------------------------------------------------------------- - + void TerrainManager::setDiffuse(const ColourValue& diffuse) { mTerrainGlobals.setCompositeMapDiffuse(diffuse); } - + //---------------------------------------------------------------------------------------------- - + void TerrainManager::setAmbient(const ColourValue& ambient) { mTerrainGlobals.setCompositeMapAmbient(ambient); @@ -160,7 +160,7 @@ namespace MWRender numTextures, indexes); - if ( land->landData->usingColours ) + if ( land && land->landData->usingColours ) { // disable or enable global colour map (depends on available vertex colours) mActiveProfile->setGlobalColourMapEnabled(true); @@ -253,7 +253,7 @@ namespace MWRender assert( (int)mEnvironment.mWorld->getStore().landTexts.getSize() >= (int)ltexIndex - 1 && "LAND.VTEX must be within the bounds of the LTEX array"); - + std::string texture; if ( ltexIndex == 0 ) { @@ -359,7 +359,7 @@ namespace MWRender } else { - //this provides a transition shading but also + //this provides a transition shading but also //rounds off the corners slightly pBlend[index] = std::min(1.0f, pBlend[index] + 0.5f); } @@ -458,10 +458,10 @@ namespace MWRender TEX_TYPE_2D, size, size, 0, PF_BYTE_BGR); HardwarePixelBufferSharedPtr pixelBuffer = tex->getBuffer(); - + pixelBuffer->lock(HardwareBuffer::HBL_DISCARD); const PixelBox& pixelBox = pixelBuffer->getCurrentLock(); - + uint8* pDest = static_cast(pixelBox.data); if ( land != NULL ) @@ -501,7 +501,7 @@ namespace MWRender } } } - + pixelBuffer->unlock(); return tex;