In my experience there are different choices based on the software/development architecture you're using. For example are you using ROS2 or ardupilot in any way? Then maybe Gazebo. Most of my team uses Gazebo and while I find it a little clunky, it usually gets the job done.
I've heard some good things about the sim environment Nvidia put out but haven't tried it yet, I assume it has good physics.