Looks like there is another possibility what could go wrong. As objective-C allows to send messages to nil objects, the error could be that the buffer itself is nil. Which could mean that the device is nil which could mean that the metal Layer is nil. So I changed to a hosted layer setup where in my view, I explicitely create a layer and assign it to the view and then set wantsLayer to true (see documentation of wantsLayer). Let's hope for the best that this works.
But why is this only happening on Sierra and High Sierra? Guess it is not that important.
Topic:
Graphics & Games
SubTopic:
General
Tags: