Remove inactive entities after a while

Registered by Erik Ogenvik

Currently Eris doesn't cull entities which haven't been visible for a while. While the graphical representation of them is disabled (i.e. they aren't shown) the instances are still there. This leads to Eris holding on to too many instances when running the client for a while, with the toll on memory etc that it takes.

The reason for them not being removed is that events such as deletion or movement are only broadcast to clients that are in the vicinity of the entity. So if a client first sees entity Foo, then moves away so that it no longer can see Foo, and Foo gets deleted this will lead to the client not getting any information about Foo being deleted.

The solution to this is to let Eris keep track of entities it hasn't seen in a while and prune them (i.e. delete them). This should be probably be done as a part of the "poll" loop.e

Blueprint information

Status:
Started
Approver:
Erik Ogenvik
Priority:
High
Drafter:
Erik Ogenvik
Direction:
Needs approval
Assignee:
None
Definition:
Approved
Series goal:
None
Implementation:
Deployment
Milestone target:
None
Started by
Erik Ogenvik

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.