Я запустил шаблон Xcode, используя GLKit, но я намерен иметь окно, показывающее часть представления OpenGL и UIKit для элементов управления.
GLKViewController поставляется с GLKView. Я пошел в IB и удалил GLKView и добавил UIView, поместив новый GLKView сверху с нужным мне размером. Затем я исправил ссылки на GLKView (self.view)и установил меньший делегат GLKView на контроллер представления.
Я получил
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[GLKViewController loadView] loaded the "2-view-9XZ-07-hga" nib but didn't get a GLKView.'
Затем я просмотрел документы и обнаружил, что GLKViewController требует GLKView в качестве своего представления. Не удивительно. Да я новичок в этом.
Как лучше всего использовать GLKit с GLKView размером меньше полноэкранного? Или смешивание UIKit и GLKit еще не сделано?
(обновление:многие люди находят этот вопрос; Ответ Дункана, использующий сдерживание контроллера представления, сработал хорошо.)