diff --git a/Core/GameEngine/Include/GameClient/View.h b/Core/GameEngine/Include/GameClient/View.h index d47ecaa4fea..cf596948430 100644 --- a/Core/GameEngine/Include/GameClient/View.h +++ b/Core/GameEngine/Include/GameClient/View.h @@ -377,7 +377,7 @@ class ViewLocation m_pos = pos; m_angle = angle; m_pitch = pitch; - m_zoom = zoom; + m_zoom = std::clamp(zoom, 0.f, 1.f); } private: diff --git a/Core/GameEngine/Source/GameClient/RadiusDecal.cpp b/Core/GameEngine/Source/GameClient/RadiusDecal.cpp index c7863220aaf..268891c680f 100644 --- a/Core/GameEngine/Source/GameClient/RadiusDecal.cpp +++ b/Core/GameEngine/Source/GameClient/RadiusDecal.cpp @@ -66,8 +66,8 @@ void RadiusDecalTemplate::createRadiusDecal(const Coord3D& pos, Real radius, con // it is now considered nonEmpty, regardless of the state of m_decal, etc result.m_empty = false; - if (!m_onlyVisibleToOwningPlayer || - owningPlayer->getPlayerIndex() == ThePlayerList->getLocalPlayer()->getPlayerIndex()) + if (!m_onlyVisibleToOwningPlayer || owningPlayer->getPlayerIndex() == ThePlayerList->getLocalPlayer()->getPlayerIndex() + || ThePlayerList->getLocalPlayer()->isPlayerObserver()) { Shadow::ShadowTypeInfo decalInfo; decalInfo.allowUpdates = FALSE; // shadow texture will never update