Skip to content

Conversation

@Elettrotecnica
Copy link

Dear maintainers,

this pull request updates three-to-ammo dependency to latest 1.0.1 version.

This version introduced api-breaking changes where now the function creating the collision shapes does not expect an object3D anymore, but the pre-digested vertices, matrixes and indexes. The purpose of these changes is to be able to run the code in workers.

In order to be able to compile and run the tests on the new version, I had to introduce a new dependency on esmify. Without this extra plugin, compilation on three-to-ammo would complain about:

SyntaxError: 'import' and 'export' may appear only with 'sourceType: module' browserify

I am not very happy about introducing esmify, as its project status does not seem the best and I am confident a better solution can be found. I am open to suggestions about a better way to build the distribution files when a library contains "import" and "export" keywords.

On the plus side, the patch we used to apply on three-to-ammo became obsolete.

All the best

Antonio

This version deeply reforms the api to enable use with workers. Now creating collision requires pre-calculating vertices, indexes and matrices so that they are expressed in basic Javascript types.
The new version is also written using the "include" and "export" syntax, so an additional dependency to esmify has been introduced and the command lines and tests updated to use esmify on the codebase.
The patch previously applied to three-to-ammo by us is obsolete, as we can pass the options to the entire api directly in our codebase.
@Elettrotecnica
Copy link
Author

I see there exists already a pull request #22 trying to address moving to a more modern bundling tool.

@diarmidmackenzie
Copy link
Member

Thanks for this. Much appreciated.

Happy to use esmify for now. Would like to eventually move to webpack per #22, but this is a nice way to get to three-to-ammo v1.0.1 with less radical changes.

@diarmidmackenzie diarmidmackenzie merged commit b74af35 into c-frame:master Oct 11, 2023
@Elettrotecnica Elettrotecnica deleted the update-three-to-ammo-to-1-0-1 branch December 28, 2023 11:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants