I have an MTKView in a window managed by a window controller. When I first instantiate the window controller and window, the MTKView calls my delegate's two calls and drawInMTKView is called at the preferred rate:
- (void)drawInMTKView:(nonnull MTKView *)view
- (void)mtkView:(nonnull MTKView *)view drawableSizeWillChange:(CGSize)size
If close the window (not release the window just hide), when I re-open the window, the drawableSizeWillChange call is still invoked when I resize the MTKView, but the drawInMTKView is no longer called. The MTKView runs in its default mode with its own displaylink. As drawInMTKView is not called, it leaves be to believe that there is something wrong with the private displayLink variable in the MTKView.
I'm running Xcode 9.4.1 on OSX Mojave, recent 2017 MacBook Pro