Fixed collisions on inactive objects
This commit is contained in:
@@ -165,7 +165,7 @@ void CollisionSystem::updateCollider(uint16_t gameObjectIndex, const psyqo::Vec3
|
||||
}
|
||||
}
|
||||
|
||||
int CollisionSystem::detectCollisions(const AABB& playerAABB, psyqo::Vec3& pushBack) {
|
||||
int CollisionSystem::detectCollisions(const AABB& playerAABB, psyqo::Vec3& pushBack, SceneManager& scene) {
|
||||
m_resultCount = 0;
|
||||
const FP zero(0);
|
||||
pushBack = psyqo::Vec3{zero, zero, zero};
|
||||
@@ -173,7 +173,9 @@ int CollisionSystem::detectCollisions(const AABB& playerAABB, psyqo::Vec3& pushB
|
||||
// Rebuild spatial grid with all colliders
|
||||
m_grid.clear();
|
||||
for (int i = 0; i < m_colliderCount; i++) {
|
||||
m_grid.insert(i, m_colliders[i].bounds);
|
||||
if(scene.getGameObject(m_colliders[i].gameObjectIndex)->isActive()) {
|
||||
m_grid.insert(i, m_colliders[i].bounds);
|
||||
}
|
||||
}
|
||||
|
||||
// Test player AABB against all colliders for push-back
|
||||
|
||||
Reference in New Issue
Block a user