Remove inactive entities after a while
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
- Completed by