Memory cost of storing many Game Objects in a list

I am working on a project that will allow the player to interact with a large number of items in the scene. Instead of trying to store information about an object on the object itself I thought I would store the game object and its world point in a C# dictionary list as a sort of master database. I think this would save a lot of hassle on trying to figure things out with colliders and whatnot. The thing is I may be storing thousands of objects and am not sure what this might mean in terms of memory usage. Would it be better to store a unique name and just do a GameObject.Find when I needed it or is there a better way?


I don’t believe memory is much of an issue here. If you’re going to have the objects in the world, they’re going to take up whatever memory they’re going to take up.
The dictionary itself won’t be another set of those objects taking up even more space, it’ll be a very tiny list of references to the addresses of those objects.

You can use empty game objects to organize lists of objects. Just create an empty game object, make sure position and rotion is all 0. When creating your other objects make them children of this empty object. Given the parent object you can then iterate through the child objects as needed.