mirror of
				https://github.com/OpenMW/openmw.git
				synced 2025-10-26 14:56:39 +00:00 
			
		
		
		
	Merge remote-tracking branch 'upstream/master'
This commit is contained in:
		
						commit
						f06dd39892
					
				
					 7 changed files with 27 additions and 25 deletions
				
			
		|  | @ -48,8 +48,8 @@ | ||||||
|     Bug #4459: NotCell dialogue condition doesn't support partial matches |     Bug #4459: NotCell dialogue condition doesn't support partial matches | ||||||
|     Bug #4461: "Open" spell from non-player caster isn't a crime |     Bug #4461: "Open" spell from non-player caster isn't a crime | ||||||
|     Bug #4469: Abot Silt Striders – Model turn 90 degrees on horizontal |     Bug #4469: Abot Silt Striders – Model turn 90 degrees on horizontal | ||||||
|     Bug #4471: Retrieve SDL window settings instead of using magic numbers |  | ||||||
|     Bug #4474: No fallback when getVampireHead fails |     Bug #4474: No fallback when getVampireHead fails | ||||||
|  |     Bug #4475: Scripted animations should not cause movement | ||||||
|     Feature #3276: Editor: Search- Show number of (remaining) search results and indicate a search without any results |     Feature #3276: Editor: Search- Show number of (remaining) search results and indicate a search without any results | ||||||
|     Feature #4222: 360° screenshots |     Feature #4222: 360° screenshots | ||||||
|     Feature #4256: Implement ToggleBorders (TB) console command |     Feature #4256: Implement ToggleBorders (TB) console command | ||||||
|  |  | ||||||
|  | @ -3,7 +3,7 @@ How to contribute to OpenMW | ||||||
| 
 | 
 | ||||||
| Not sure what to do with all your free time? Pick out a task from here: | Not sure what to do with all your free time? Pick out a task from here: | ||||||
| 
 | 
 | ||||||
| https://bugs.openmw.org/ | https://gitlab.com/OpenMW/openmw/issues | ||||||
| 
 | 
 | ||||||
| Currently, we are focused on completing the MW game experience and general polishing. Features out of this scope may be approved in some cases, but you should probably start a discussion first. | Currently, we are focused on completing the MW game experience and general polishing. Features out of this scope may be approved in some cases, but you should probably start a discussion first. | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -110,7 +110,11 @@ void CSVWorld::EnumDelegate::paint (QPainter *painter, const QStyleOptionViewIte | ||||||
|     int valueIndex = getValueIndex(index); |     int valueIndex = getValueIndex(index); | ||||||
|     if (valueIndex != -1) |     if (valueIndex != -1) | ||||||
|     { |     { | ||||||
|  | #if QT_VERSION >= QT_VERSION_CHECK(5,7,0) | ||||||
|  |         QStyleOptionViewItem itemOption(option); | ||||||
|  | #else | ||||||
|         QStyleOptionViewItemV4 itemOption(option); |         QStyleOptionViewItemV4 itemOption(option); | ||||||
|  | #endif | ||||||
|         itemOption.text = mValues.at(valueIndex).second; |         itemOption.text = mValues.at(valueIndex).second; | ||||||
|         QApplication::style()->drawControl(QStyle::CE_ItemViewItem, &itemOption, painter); |         QApplication::style()->drawControl(QStyle::CE_ItemViewItem, &itemOption, painter); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  | @ -381,33 +381,24 @@ void OMW::Engine::createWindow(Settings::Manager& settings) | ||||||
|     setWindowIcon(); |     setWindowIcon(); | ||||||
| 
 | 
 | ||||||
|     osg::ref_ptr<osg::GraphicsContext::Traits> traits = new osg::GraphicsContext::Traits; |     osg::ref_ptr<osg::GraphicsContext::Traits> traits = new osg::GraphicsContext::Traits; | ||||||
|     int redSize; |  | ||||||
|     int greenSize; |  | ||||||
|     int blueSize; |  | ||||||
|     int depthSize; |  | ||||||
|     int stencilSize; |  | ||||||
|     int doubleBuffer; |  | ||||||
|      |  | ||||||
|     SDL_GL_GetAttribute(SDL_GL_RED_SIZE, &redSize); |  | ||||||
|     SDL_GL_GetAttribute(SDL_GL_GREEN_SIZE, &greenSize); |  | ||||||
|     SDL_GL_GetAttribute(SDL_GL_BLUE_SIZE, &blueSize); |  | ||||||
|     SDL_GL_GetAttribute(SDL_GL_DEPTH_SIZE, &depthSize); |  | ||||||
|     SDL_GL_GetAttribute(SDL_GL_STENCIL_SIZE, &stencilSize); |  | ||||||
|     SDL_GL_GetAttribute(SDL_GL_DOUBLEBUFFER, &doubleBuffer); |  | ||||||
|      |  | ||||||
|     SDL_GetWindowPosition(mWindow, &traits->x, &traits->y); |     SDL_GetWindowPosition(mWindow, &traits->x, &traits->y); | ||||||
|     SDL_GetWindowSize(mWindow, &traits->width, &traits->height); |     SDL_GetWindowSize(mWindow, &traits->width, &traits->height); | ||||||
|     traits->red = redSize; |  | ||||||
|     traits->green = greenSize; |  | ||||||
|     traits->blue = blueSize; |  | ||||||
|     traits->depth = depthSize; |  | ||||||
|     traits->stencil = stencilSize; |  | ||||||
|     traits->doubleBuffer = doubleBuffer; |  | ||||||
|     traits->windowName = SDL_GetWindowTitle(mWindow); |     traits->windowName = SDL_GetWindowTitle(mWindow); | ||||||
|     traits->windowDecoration = !(SDL_GetWindowFlags(mWindow)&SDL_WINDOW_BORDERLESS); |     traits->windowDecoration = !(SDL_GetWindowFlags(mWindow)&SDL_WINDOW_BORDERLESS); | ||||||
|     traits->screenNum = SDL_GetWindowDisplayIndex(mWindow); |     traits->screenNum = SDL_GetWindowDisplayIndex(mWindow); | ||||||
|     traits->vsync = vsync; |     // We tried to get rid of the hardcoding but failed: https://github.com/OpenMW/openmw/pull/1771
 | ||||||
|  |     // Here goes kcat's quote:
 | ||||||
|  |     // It's ultimately a chicken and egg problem, and the reason why the code is like it was in the first place.
 | ||||||
|  |     // It needs a context to get the current attributes, but it needs the attributes to set up the context.
 | ||||||
|  |     // So it just specifies the same values that were given to SDL in the hopes that it's good enough to what the window eventually gets.
 | ||||||
|  |     traits->red = 8; | ||||||
|  |     traits->green = 8; | ||||||
|  |     traits->blue = 8; | ||||||
|     traits->alpha = 0; // set to 0 to stop ScreenCaptureHandler reading the alpha channel
 |     traits->alpha = 0; // set to 0 to stop ScreenCaptureHandler reading the alpha channel
 | ||||||
|  |     traits->depth = 24; | ||||||
|  |     traits->stencil = 8; | ||||||
|  |     traits->vsync = vsync; | ||||||
|  |     traits->doubleBuffer = true; | ||||||
|     traits->inheritedWindowData = new SDLUtil::GraphicsWindowSDL2::WindowData(mWindow); |     traits->inheritedWindowData = new SDLUtil::GraphicsWindowSDL2::WindowData(mWindow); | ||||||
| 
 | 
 | ||||||
|     osg::ref_ptr<SDLUtil::GraphicsWindowSDL2> graphicsWindow = new SDLUtil::GraphicsWindowSDL2(traits); |     osg::ref_ptr<SDLUtil::GraphicsWindowSDL2> graphicsWindow = new SDLUtil::GraphicsWindowSDL2(traits); | ||||||
|  |  | ||||||
|  | @ -2141,7 +2141,7 @@ void CharacterController::unpersistAnimationState() | ||||||
| 
 | 
 | ||||||
|         bool loopfallback = (mAnimQueue.front().mGroup.compare(0,4,"idle") == 0); |         bool loopfallback = (mAnimQueue.front().mGroup.compare(0,4,"idle") == 0); | ||||||
|         mAnimation->play(anim.mGroup, |         mAnimation->play(anim.mGroup, | ||||||
|                          Priority_Default, MWRender::Animation::BlendMask_All, false, 1.0f, |                          Priority_Persistent, MWRender::Animation::BlendMask_All, false, 1.0f, | ||||||
|                          "start", "stop", complete, anim.mLoopCount, loopfallback); |                          "start", "stop", complete, anim.mLoopCount, loopfallback); | ||||||
|     } |     } | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -328,7 +328,10 @@ namespace MWMechanics | ||||||
|                 if (race->mData.mFlags & ESM::Race::Beast) |                 if (race->mData.mFlags & ESM::Race::Beast) | ||||||
|                     return 0.f; |                     return 0.f; | ||||||
|             } |             } | ||||||
|             // Intended fall-through
 |             else | ||||||
|  |                 return 0.f; | ||||||
|  | 
 | ||||||
|  |             break; | ||||||
|         // Creatures can not wear armor
 |         // Creatures can not wear armor
 | ||||||
|         case ESM::MagicEffect::BoundCuirass: |         case ESM::MagicEffect::BoundCuirass: | ||||||
|         case ESM::MagicEffect::BoundGloves: |         case ESM::MagicEffect::BoundGloves: | ||||||
|  |  | ||||||
|  | @ -1190,6 +1190,10 @@ namespace MWRender | ||||||
|                 mHeadController->setRotate(osg::Quat(mHeadPitchRadians, osg::Vec3f(1,0,0)) * osg::Quat(mHeadYawRadians, osg::Vec3f(0,0,1))); |                 mHeadController->setRotate(osg::Quat(mHeadPitchRadians, osg::Vec3f(1,0,0)) * osg::Quat(mHeadYawRadians, osg::Vec3f(0,0,1))); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  |         // Scripted animations should not cause movement
 | ||||||
|  |         if (hasScriptedAnims) | ||||||
|  |             return osg::Vec3f(0, 0, 0); | ||||||
|  | 
 | ||||||
|         return movement; |         return movement; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue