In a nutshell, the breaking change is required so we can detect url mimetypes and auto select which plugin to use to load it.
To get there we need to move our loading code path to a fully async approach.
This is not far fetched as all the code is already based either on promise or callbacks.
The problem is that some functions (namely SceneLoader.Load, SceneLoader.Append, SceneLoader.ImportMesh) will not return the plugin that was used to load them.
So my question is: Do you see that as a big problem?
yes that will break my code
no it is totally fine
0voters
To avoid that issue and if you need to know which plugin was used you can rely on SceneLoader.OnPluginActivatedObservable
I’m the only one that says that will break my code XD.
What about in the cases where you need a reference to the loader to add observable to OnPluginActivatedObservable and things? That is the only thing I can think of.
it’s a breaking change in react-babylonjs. No objections though - It’s easy for me to fix - I can undo that I get the plugin name from ImportMesh without async.
Maybe just my opinion only, but I would make the async not need a callback for onSuccess/onError.