Clear rewound entities if we attempt to sync rewind state outside of a scoped rewind

Signed-off-by: kberg-amzn <karlberg@amazon.com>
This commit is contained in:
kberg-amzn
2021-09-07 21:08:51 -07:00
parent 4249ceeae7
commit 0b7c4fff85
2 changed files with 7 additions and 2 deletions
@@ -281,8 +281,6 @@ namespace Multiplayer
void NetworkEntityManager::RemoveEntities()
{
//RewindableObjectState::ClearRewoundEntities();
AZStd::vector<NetEntityId> removeList;
removeList.swap(m_removeList);
for (NetEntityId entityId : removeList)
@@ -93,6 +93,13 @@ namespace Multiplayer
void NetworkTime::SyncEntitiesToRewindState(const AZ::Aabb& rewindVolume)
{
if (!IsTimeRewound())
{
// If we're not inside a rewind scope then reset any rewound state and exit
ClearRewoundEntities();
return;
}
// Since the vis system doesn't support rewound queries, first query with an expanded volume to catch any fast moving entities
const AZ::Aabb expandedVolume = rewindVolume.GetExpanded(AZ::Vector3(sv_RewindVolumeExtrudeDistance));