Nothing good in life is for free

UE4 has been out for just over a year (yeah, in development for longer but it’s still young).

You could (not-easily) change the Physics Engine. All of the callbacks to PhysX are wrapped in #define tags, so you could create your own functions wrapped in different #define tags and call to another physics engine. Good luck with that though…