Hi everyone, I was curious about the footprint of an empty GO (or with at most 1 component) and how many of them would actually be having too much of them.
I am using 3D models/blocks to design a 3D scene and keeping each model on its own GO allows me to select it directly and move around but I am not sure if this would cause performance problems later on if the scene gets too big.
So, the question is: How many game objects is too much? (also curious about the same question but for collection loaded with collection factories)
Thank beforehand ![]()
You can animate (tens of) thousands of game objects with go.animate without problems. That will not really be a big problem. The question is what each object will hold. You mentioned models. Then you need to consider how many you can draw at once (culling, batching, instancing) rather than if each model is in a separate game object or not.
Our classic example is Bunnymark which easily animates 32k GO’s with sprites in a browser.
As Björn mentions, GO performance in itself isn’t much of an issue, but it’s the rest of the components that add actual work.
As we venture further into 3D, we’ll need more mechanisms to what needs to be done to keep performance high. Like: How to “bake” static geometry into something more optimized. No need for an actual GO if the geometry is static.
And for instancing lots of small objects, like rocks, pebbles and grass, we don’t want a GO for each of them, as it’ll easily turn into millions of them.
So, we’ll need to figure out these use cases, and create tickets for them.
My best advice here is to create a quick mockup of what you want to test, and see how it performas, and we can have a discussion around that.
Thank you! I will use many GO and will let you know if it causes any additional performance problems
For my case, I only need the simple 3D models to be under a GO so that when I click on it on scene editor, I can select it. If we could click on model/sprite like components it would be nice (this could be an option that can be toggled on/off from settings?) also something like a “component factory” would make things simpler for procedural generation of scenes. Is there a way I can spawn model components on my scene GO?