Now V5 is out and I have some free time, I thought I would try this again. I use the following code to load a mesh. I can see the mesh is loaded in the asset container’s meshes array in the callback. But when I call the asset container later, the meshes array is empty. I must be missing something, I thought the asset container would be persisted. What am I missing?
let assetContainer = null;
function DoSomething() {
assetContainer = new BABYLON.AssetContainer(scene);
BABYLON.SceneLoader.LoadAssetContainer("./Meshes/Articles/", "1DoorFixed_1145.glb", scene, function (assetContainer) {
// Contains my mesh
let meshes = assetContainer.meshes;
});
}
function DoSomethingLater() {
// Is Empty
let meshes = assetContainer.meshes;
}
Ignore this. I’m being stupid. The asset container in the callback is not the same as the one I have defined. Doh.
However, when I use scene.addMesh in the callback (because I don’t want to add everything), I can see it in the scene, but the debuglayer inspector never shows the mesh as a node. Any ideas?
Scrap that as well. It was because the callback had loaded all the meshes of the model into separate entries in the meshes list. I had to use merge meshes to recombine them into a single mesh.
How do you delete a question
1 Like
If you actually do want to delete it, I think there’s a way, but I’m not familiar with it; I think @carolhmj is the best person to ask about that. However, I don’t think you need to delete this question unless you want to; people answer their own questions all the time. All you need to do is mark your reply to yourself as the solution, and that’s that!
@syntheticmagus is right, no need to delete it, you can mark your own answer as a solution, and it will be helpful for future people with the same problem!
1 Like