In my code I am using the present(:animated:completion:) method to present ViewController2 from ViewController1 that is the root view controller of a container view nested within RootViewController.
I've set the presentation style to be .coverVertical and I have ViewController1's definesPresentationContext variable set to true in it's viewDidLoad() method. I also have ViewController2's presentation set to .overCurrentContext. This makes ViewController2's bounds the same as ViewController1's but for whatever reason the .coverVertical animation starts at the bottom of the screen instead of starting from the bottom of ViewController1's frame.
However, this goes away when I set the root view controller of the container view to be a UINavigationController and nest ViewController1 within it. I assume this means that there is some second context variable that I'm missing that prevents the animations from animating overtop other views, but I couldn't seem to find any other variables besides definesPresentationContext.