How to reproduce:
1. Open the “AddForceAtPositionCrash“ project
2. Open the “SampleScene“
3. Open the “SceneTransition“ GameObject in the Inspector
4. Enter the Play Mode
5. In the “Scene Transition (Script)“ component toggle on the “Transition Scene“ property
6. Observe the crash
Reproducible with: 2021.3.43f1, 2022.3.44f1, 2023.3.0a19
Not reproducible with: 6000.0.17f1
Fixed in: 2023.3.0b1
Reproducible on: macOS 14.5 (Intel), Windows 10 (User’s)
Not reproducible on: No other environments tested
Notes:
- Reproduces on a fresh project
- Reproduces in the Player (see more in the comments)
- The crash is caused by the “Rigidbody.AddForceAtPosition“ method
First few lines of the stack trace:
#0 0x0000010c9b7b88 in physx::Scb::Body::addSpatialAcceleration(physx::PxVec3 const*, physx::PxVec3 const*)
#1 0x0000010c9a51e5 in physx::NpRigidBodyTemplatephysx::PxArticulationLink::addSpatialForce(physx::PxVec3 const*, physx::PxVec3 const*, physx::PxForceMode::Enum)
#2 0x0000010c9a4ddc in physx::NpArticulationLink::addForce(physx::PxVec3 const&, physx::PxForceMode::Enum, bool)
#3 0x0000010a2575ea in Unity::ArticulationBody::AddForceAtPosition(Vector3f const&, Vector3f const&, Unity::Physics::ForceMode)
#4 0x00000109788dd1 in ArticulationBody_CUSTOM_AddForceAtPosition_Injected(ScriptingBackendNativeObjectPtrOpaque*, Vector3f const&, Vector3f const&, Unity::Physics::ForceMode)