glTF icon indicating copy to clipboard operation
glTF copied to clipboard

MAXAR_collision_geometry

Open erikdahlstrom opened this issue 3 years ago • 1 comments

A draft extension for being able to associate collision meshes with meshes inside a glTF.

erikdahlstrom avatar Oct 27 '21 11:10 erikdahlstrom

Hi @erikdahlstrom - great that you are looking into collisions :-)

We are also very interested in being able to use meshes for collision, for many usecases a decimated version (LOD) will suffice but for some cases these may not be convex hulls.

Our ideal usecase would be to convert to convex hulls on the client side at load-time, is this something you have looked into and considered? For this we may use some version of HACD, however at the moment this seems to be somewhat too time consuming to do on the client side.

Just out of curiosity - have you considered simply adding the boundingbox reference as metadata (extras) to the visible mesh?

ps Another way of doing boundingboxes could be to put the non visible collision meshes as a node hierarchy in a separate scene. Ie, scene 0 contains all visible nodes and scene 1 contains collision meshes. ds

Best regards /Richard

rsahlin avatar Jan 14 '22 09:01 rsahlin

OMI has been working on an extension called OMI_collider which allows glTF files to define collision geometry. It also includes primitive shapes such as boxes and convex hulls, so it's a superset of MAXAR_collision_geometry in terms of supported features. Also note MAXAR_collision_geometry has some weird limitations like being attached to meshes, OMI_collider has no such restriction.

OMI_collider is progressing nicely, it has been implemented in Godot Engine (both import and export), it has full schemas, example files, and a validator implementation. OMI_collider likely makes MAXAR_collision_geometry obsolete, though I'd love to hear your feedback if OMI_collider won't fork for a particular use case you have.

aaronfranke avatar Dec 11 '22 06:12 aaronfranke

I'm going to refer to @bjornblissing for this, as I'm no longer with Maxar.

From memory, we shipped some content using this extension, so this is documenting that snapshot. However, I don't see why changes couldn't be made in the future (or now even), or that another suitable alternative for colliders is found that is acceptable to Maxar. However, I can't speak for Maxar.

erikdahlstrom avatar Dec 20 '22 15:12 erikdahlstrom