Open 3D Engine (O3DE) is an Apache 2.0-licensed multi-platform 3D engine that enables developers and content creators to build AAA games, cinema-quality 3D worlds, and high-fidelity simulations without any fees or commercial obligations.
Describe the bug
If a PhysX Mesh is assigned on the PhysX Mesh Collider component on an entity and it's type (Export AsPrimitive/Convex/Triangle Mesh) is changed from a dynamic to static (or static to dynamic) it will not interact properly with the PhysX Dynamic Rigid Body/PhysX Static Rigid Body components. Restarting the Editor fixes this issue.
Steps to reproduce
Find an .fbx with PhysX Mesh generated (by default _Box_1x1.fbx should have Primitive PhysX Mesh generated) or generate one on any compatible .fbx asset. This can be verified by right-clicking the asset in the Asset Browser and selecting Edit Scene Settings... in the context menu, then checking the Select Meshes and Export As properties in the PhysX tab.
Create an entity with components: Mesh, PhysX Mesh Collider, and PhysX Dynamic Rigid Body.
In the Mesh component's Model Asset property assign the .fbx from step 1, this should also automatically assign the generated PhysX Mesh in the PhysX Mesh Collider component.
Enter the Game Mode/Simulate (entity should fall to the Ground entity).
Exit Game Mode/Simulate and navigate back to the Fbx Settings window as described in step 1 and change Export As to Triangle Mesh.
Click the Save button and repeat step 4 (entity should fall through the Ground entity and an error should be printed to the Console about Triangle Mesh's incompatibility with a PhysX Dynamic Rigid Body component).
Exit Game Mode/Simulate, delete the PhysX Dynamic Rigid Body component from the entity and add the PhysX Static Rigid Body component.
Enter the Game Mode/Simulate.
Expected behavior
Entity stays in one place and no errors are printed to the Console.
Actual behavior
Entity behaves the same as described in step 6.
Discussed on sig-simulation issue triage, one of the maintainers in sig-simulation will try to recreate it and take a look into generated and re-generated product assets.
Describe the bug If a PhysX Mesh is assigned on the PhysX Mesh Collider component on an entity and it's type (
Export As
Primitive/Convex/Triangle Mesh) is changed from a dynamic to static (or static to dynamic) it will not interact properly with the PhysX Dynamic Rigid Body/PhysX Static Rigid Body components. Restarting the Editor fixes this issue.Steps to reproduce
Expected behavior Entity stays in one place and no errors are printed to the Console.
Actual behavior Entity behaves the same as described in step 6.
Video
https://github.com/o3de/o3de/assets/86952082/3757dd43-bd44-47cd-aec1-d54d7e89d6ab
Found in Branch Development (a9cea64)
Commit ID from o3de/o3de Repository a9cea6498db527ad8b226d8087a480efb789dd02
Desktop