NSOpenGLView: пост Xcode9, как получить NSBitmapGraphicsContext для рисования на экране? - PullRequest
0 голосов
/ 06 ноября 2019

Я пытаюсь заставить приложение Apple FunHouse встраивать новые версии Xcode - после Xcode 9 главное окно черное. Я узнал, что в Xcode 9, когда NSOpenGLView запрашивает текущий graphicsContext в drawRect:, он возвращает NSWindowGraphicsContext. В Xcode 10+ он получает NSBitMapGraphicsContext. [Это получается только тогда, когда вы заставляете подкласс НЕ использовать представление с резервной копией слоя, которое, по-видимому, используется по умолчанию после 9, в противном случае currentContext.]

Весь этот код нуждается в переработке, нолегче начать с чего-то, что работает, и улучшить его, вместо того, чтобы пробовать то и это и не делать этого. Подкласс 'drawRect проверяет, отображается ли контекст на экране, и использует разные пути в зависимости от результата.

Так что на самом деле мой вопрос - учитывая, что я могу нарисовать это NSBitMapContext, какполучить результат на экране?

...