Don't recreate the nearList for each entity

This commit is contained in:
Henrique Gemignani Passos Lima 2021-04-03 04:32:26 +03:00
parent cefe6bb232
commit 483e25bff3
1 changed files with 2 additions and 1 deletions

View File

@ -2344,6 +2344,7 @@ void CStateManager::MoveActors(float dt) {
void CStateManager::CrossTouchActors() { void CStateManager::CrossTouchActors() {
std::array<bool, 1024> visits{}; std::array<bool, 1024> visits{};
rstl::reserved_vector<TUniqueId, 1024> nearList;
for (CEntity* ent : GetActorObjectList()) { for (CEntity* ent : GetActorObjectList()) {
if (ent == nullptr) { if (ent == nullptr) {
@ -2365,7 +2366,7 @@ void CStateManager::CrossTouchActors() {
filter = CMaterialFilter::MakeExclude(EMaterialTypes::Trigger); filter = CMaterialFilter::MakeExclude(EMaterialTypes::Trigger);
} }
rstl::reserved_vector<TUniqueId, 1024> nearList; nearList.clear();
BuildNearList(nearList, *touchAABB, filter, &actor); BuildNearList(nearList, *touchAABB, filter, &actor);
for (const auto& id : nearList) { for (const auto& id : nearList) {