I'm working on getting a better object ID system setup in my engine. I've got a basic counter that just keeps generating an ID one greater than the last one already, but what I need is some way of making sure that IDs are usable after being loaded from a file. I have a scene loader, and a prefab loader/object instantiater that both need to be able to generate globally unique IDs for all objects in their local hierarchies, but also retain their local links within the hierarchy. The reason for this is that my animation/cutscene system is going to have keyframes stored by ID. If anyone has experience with a system that works for this I'd be really happy if they could provide some advice.