# Scene object management

**URL:** <https://forum.babylonjs.com/t/scene-object-management/36167>\
**Category:** Questions\
**Created:** [December 1, 2022, 10:55am UTC](https://forum.babylonjs.com/t/scene-object-management/36167 "2022-12-01T10:55:09Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Quellist](https://avatars.discourse-cdn.com/v4/letter/q/50afbb/32.png) [@Quellist](https://forum.babylonjs.com/u/Quellist)\
**Post date:** [December 1, 2022, 10:55am UTC](https://forum.babylonjs.com/t/scene-object-management/36167/1 "2022-12-01T10:55:09Z")

</div>

Hi  
I’m sure I’m just not understanding how to make best use of Babylon

I want to ‘pre-load’ meshes to an application ‘catalogue’  
These will then need to be added/removed to/form my scene as User interacts with the application

Both the assetsManager & assetsContainer reference my scene – so meshes are automatically presented

??Is there another way of loading meshes - so that i can copy/clone them in to my scene when needed

Thanks

---

<div class="post-metadata">

**Author:** ![labris](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/labris/32/12576_2.png) [@labris](https://forum.babylonjs.com/u/labris)\
**Post date:** [December 1, 2022, 11:18am UTC](https://forum.babylonjs.com/t/scene-object-management/36167/2 "2022-12-01T11:18:51Z")

</div>

As far as I know AsssetContainers are the most convenient way do to anything that you need.  
They provide also a simple way to clone or instance loaded meshes with `instantiateModelsToScene` method - [AssetContainer | Babylon.js Documentation](https://doc.babylonjs.com/typedoc/classes/BABYLON.AssetContainer#instantiateModelsToScene)

---

<div class="post-metadata">

**Author:** ![mawa](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/mawa/32/12384_2.png) [@mawa](https://forum.babylonjs.com/u/mawa)\
**Post date:** [December 1, 2022, 12:23pm UTC](https://forum.babylonjs.com/t/scene-object-management/36167/3 "2022-12-01T12:23:49Z")

</div>

> [@Quellist](#):
>
> Is there another way of loading meshes - so that i can copy/clone them in to my scene when needed

There (nearly) always is 😃. You asked for the best (most integrated in a workflow method) and I believe the one given to you by @labris has been created just for that 😉  
With that said, you can import async and on demand any asset and through a function you can clone it, instance it and also dispose of it. Using instances, you would not dispose of your original mesh while it is still displayed in the scene in the form of instances, but you could make it !visible.

---

<div class="post-metadata">

**Author:** ![Quellist](https://avatars.discourse-cdn.com/v4/letter/q/50afbb/32.png) [@Quellist](https://forum.babylonjs.com/u/Quellist)\
**Post date:** [December 1, 2022, 1:09pm UTC](https://forum.babylonjs.com/t/scene-object-management/36167/4 "2022-12-01T13:09:33Z")

</div>

Thanks for your answers  
So it looks like an assetsController will give me the flexibility I want

??Is there any reason why I should continue to use BOTH

---

<div class="post-metadata">

**Author:** ![labris](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/labris/32/12576_2.png) [@labris](https://forum.babylonjs.com/u/labris)\
**Post date:** [December 1, 2022, 2:01pm UTC](https://forum.babylonjs.com/t/scene-object-management/36167/5 "2022-12-01T14:01:31Z")

</div>

> [@Quellist](#):
>
> ??Is there any reason why I should continue to use BOTH

The matter is that except ‘meshes’ one may have other types of assets to load, like binary files, images etc. In this case AssetManager has all needed things to help, like success callbacks, error handling etc.  
Docs - [Asset Manager | Babylon.js Documentation](https://doc.babylonjs.com/features/featuresDeepDive/importers/assetManager#available-tasks)
