Commit f194a564 authored by Libor Moravčík's avatar Libor Moravčík
Browse files

Removed not working displacement parameter in AABBTree::move_node

parent c221ea87
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -75,7 +75,7 @@ struct AABBTree final : public BroadDetector
      private:
	std::shared_ptr<AABBNode> create_node(com::Folder *world, Collider *collider);
	void remove_node(com::Folder *world, const std::shared_ptr<AABBNode> &node);
	bool move_node(com::Folder *world, const std::shared_ptr<AABBNode> &node, AABB new_aabb, vec3 const & d = zero<vec3>(), vec3 const & margin = zero<vec3>());
	bool move_node(com::Folder *world, const std::shared_ptr<AABBNode> &node, AABB new_aabb, vec3 const & margin = zero<vec3>());

	std::shared_ptr<AABBNode> insert_leaf(com::Folder *world, const std::shared_ptr<AABBNode> &leaf);
	void remove_leaf(com::Folder *world, const std::shared_ptr<AABBNode> &leaf);
+2 −4
Original line number Diff line number Diff line
@@ -308,7 +308,7 @@ void AABBTree::swap_nodes(const std::shared_ptr<AABBNode> &node_1, const std::sh
	node_1->parent = parent_2;
}

bool AABBTree::move_node(com::Folder *world, const std::shared_ptr<AABBNode> &node, AABB new_aabb, vec3 const & d, vec3 const & margin)
bool AABBTree::move_node(com::Folder *world, const std::shared_ptr<AABBNode> &node, AABB new_aabb, vec3 const & margin)
{
	if (node->aabb.contains(new_aabb))
	{
@@ -316,8 +316,6 @@ bool AABBTree::move_node(com::Folder *world, const std::shared_ptr<AABBNode> &no
	}

	new_aabb = AABB::fatten(new_aabb, margin);
	// vec3 displacement = d * 1.5f;
	// new_aabb = AABB::displace(new_aabb, displacement);

	remove_leaf(world, node);
	node->aabb = new_aabb;
@@ -594,7 +592,7 @@ void AABBTree::update_collider(com::Folder *world, Collider *collider)
	clear_collisions(world, collider);

	dyn::RigidBody *rb = phx::body_system()->get_rigid_body(collider->body_root());
	if (move_node(world, node, collider->aabb(), normalized(rb->velocity().linear()),  collider->aabb_fatten_margin()))
	if (move_node(world, node, collider->aabb(), collider->aabb_fatten_margin()))
	{
		move_buffer.insert(node);
	}