Set Physical Material Override seems broken in UE5. Chaos bug?

I encountered similar issues when trying to update the Restitution on the PhysicalMaterial dynamically at runtime.

There is a solution available in code, via the public static FChaosEngineInterface::UpdateMaterial function.

After creating and assigning the PhysMaterialOverride on the BodyInstance, the properties such as Friction and Restitution can be changed and updated like this:

void Example_UpdatePhysicalMaterial(UPrimitiveComponent* BodyComponent, double InFriction, double InRestitution)
{
	UPhysicalMaterial* PhysMat = BodyComponent->BodyInstance.GetSimplePhysicalMaterial();
	if (PhysMat->Friction != InFriction || PhysMat->Restitution != InRestitution)
	{
		PhysMat->Friction = InFriction;
		PhysMat->Restitution = InRestitution;
		FChaosEngineInterface::UpdateMaterial(*PhysMat->MaterialHandle, PhysMat);
	}
}

I’m using this method (not the exact code above) and it works.