I’m doing this in Unreal Engine 5, but how this is done should be relevant for any engine, minus the details of spawning and despawning.
Anybody know how large games handle spawning and despawning enemies? One idea I had was to have a really large sphere around the player that spawns enemies when the player overlaps spawn points. But that could get tricky to implement. Another idea I had was to spawn enemies as the player enters different areas, and just put them to sleep/deactivate them until the overlap a large player sphere.
Would love to know other people’s thoughts on this. I’m looking for something that has good performance and scalability. I’m going to start testing ideas soon. But would be great if someone already knew of a solution that works.
Edit: Why downvote? I’m asking for discussion on algorithms. Is that not the point of this community…
It’s an rpg/soulslike, so I wouldn’t likely be spawning randomly all the time. But I do like the idea of spawning in a small radius outside the player view, and the pool idea is good. That could really help with keeping resources down. Only issue I could see with that is distinguishing which pool actors to choose the activate again. I’ll have to think about that a little bit since enemies will be different.
It doesn’t directly answer you but what you’re thinking about is the sort of thing addressed by a book I’m a big fan of, Data Oriented Design. It’s addressed briefly in the online version here https://dataorienteddesign.com/dodbook/node6.html#SECTION00620000000000000000