Hello. We’ve noticed some weird behavior with collision when reimporting assets that have had collision added or removed.
There’s one part that looks like a simple bug, and two other aspects that are intentional features but which lead to undesirable results for us, so we’d like pipeline options to change the behavior.
The bug is that Interchange uses the `FKShapeElem::bIsGenerated` flag to distinguish between generated and imported collision when reimporting, but Interchange doesn’t set that flag when it generates collision. Repro steps are attached.
The features that we’d like to be optional are:
A) When re-importing a mesh which includes authored collision, Interchange discards any existing /imported/ collision, but leaves any generated collision in-tact. We sometimes have a workflow like:
1) User imports mesh with no authored collision, so collision is auto-generated.
2) User updates mesh with authored collision
3) User re-imports mesh
When that happens, the asset has the authored collision and the original auto-generated collision from step 1. We’d like to be able to switch on an option like “Imported collision replaces all existing collision on reimported asset”.
B) When Interchange generates collision, it skips generating new collision if there is existing collision of the *same type* that would be generated. If the existing collision is of a different type then it is ignored and we can end up with duplicate collision. For example, if an asset has manually added box collision, but the import would generate convex collision, then we end up with both. We’d like to be able to switch on an option like “Don’t generate collision if there is existing collision on reimported asset”.
Thanks very much