レンダリングには、GLKViewController 内で GLKView を実際に使用する必要があります。常に更新する必要がないことを懸念している場合は、GLKViewController 内で self.paused = YES を使用します。これにより、レンダリング ループが停止します。再度レンダリングする必要がある場合は、単純に self.paused = NO を実行します。
別のビュー内に glkview がある場合は、包含を設定する必要があります。あなたの場合、通常の UIViewController を持つ通常の UIView を用意し、UISlider と GLKViewController (GLKView を使用) をそれに追加する必要があります。
これが完了したら、親コントローラーで通常のビューを実行できます。opengl は glk コントローラーです。
これを行う簡単な例では、UISlider を含む親をセットアップします。
親のカスタム UIViewController 内
@interface ParentViewController () {
...
UISlider *_slider; // this is your slider
CustomGLKViewController *_myGlkViewController;
}
次にviewDidLoad内:
// assuming you're using a storyboard
UIStoryboard *myStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard"
bundle:[NSBundle mainBundle]];
// setup the opengl controller
// first get an instance from storyboard
_myGlkViewController = [myStoryboard instantiateViewControllerWithIdentifier:@"idForGlkViewController"];
// then add the glkview as the subview of the parent view
[self.view addSubview:_myGlkViewController.view];
// add the glkViewController as the child of self
[self addChildViewController:_myGlkViewController];
[_myGlkViewController didMoveToParentViewController:self];
// if you want to set the glkView to the same size as the parent view,
// or you can do stuff like this inside myGlkViewController
_myGlkViewController.view.frame = self.view.bounds;
しかし、これは始めるのに役立つ単純な例にすぎません。ios5 の UIViewController コンテインメントに関する Apple ドキュメントと GLKit のドキュメントを実際に読む必要があります。