Skip to content

Conversation

@riccardobl
Copy link
Member

Makes default extensions registrable statically, to allows specific modules (think about (j)bullet, minie etc) to statically register their own extension in the gltf loader.
Similar to what is done in other contexts (eg. blender) that allow to extend their gltf importer/exporter.

@capdevon
Copy link
Contributor

capdevon commented Oct 19, 2023

It appears that this change introduces a problem with multithreading that has been solved previously.

Made Gltf extension loaders non-static to avoid concurrency

@riccardobl
Copy link
Member Author

It appears that this change introduces a problem with multithreading that has been solved previously.

Made Gltf extension loaders non-static to avoid concurrency

This doesn't revert to the previous behavior, instead it registers statically only the classes on a concurrent hash map and then each instance of the loader creates a local instance of every extension. This makes it thread safe.

@capdevon
Copy link
Contributor

OK, thank you for clarifying my doubts.

@stephengold
Copy link
Member

Unless there's additional substantive discussion, I plan to integrate this PR in about 36 hours.

@stephengold stephengold merged commit a290d07 into jMonkeyEngine:master Nov 3, 2023
@stephengold stephengold modified the milestones: Future Release, v3.7.0 Oct 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants