Показать 2 просмотра OpenGLES бок о бок на ios

Я новичок в программировании OpenGL на IOS. Итак, я начал с шаблона игры opegles, который поставляется в Xcode. Это работает как есть. Тем не менее, я изо всех сил пытался настроить два вида открытых окон рядом. Вот моя реализация.

In AppDelegate.m
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{

   self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPad"    bundle:nil] autorelease];
    self.anotherViewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil] autorelease];
    self.window.rootViewController = self.viewController;
    [self.window addSubview:self.anotherViewController.view];
}

ViewController является производным от GLKViewController. В настоящее время я использую ужасно грубый способ расположить два вида рядом в ВК следующим образом:

- (void) viewDidLoad{
   [super viewDidLoad];

   self.context = [[[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2] autorelease];

   if (!self.context) {
       NSLog(@"Failed to create ES context");
   }
   static int staticX = 0;
   self.view = [[GLKView alloc] initWithFrame:CGRectMake(100, 100, 50 * staticX, 50)];
   GLKView *view = (GLKView *)self.view;

   view.frame = CGRectMake(100, 100, 50 * staticX, 50);
   view.context = self.context;
   view.drawableDepthFormat = GLKViewDrawableDepthFormat24;
   [self setupGL:self.context];
   staticX++;
}

Когда я запускаю этот код на своем iPad, я получаю эту ошибку, когда вызывается glkView:(GLKView*) drawInRect:(CGRect): OpenGLGame[1183:907] Не удалось создать полный объект кадрового буфера 8cd6.

Первый вид отображается правильно, но на весь экран.

Может кто-нибудь помочь мне разобраться, что мне здесь не хватает?

Спасибо

0 ответов

Другие вопросы по тегам