В Cocos2d есть демонстрационная программа под названием AttachDemo
, где она прикрепляет директора Cocos2d к UIView
.Если вы проверите метод с именем -(void)runCocos2d
.
Если вы посмотрите на его код, он делает следующее:
-(void) runCocos2d
{
if( state == kStateEnd ) {
EAGLView *glview = [EAGLView viewWithFrame:CGRectMake(0, 0, 250,350)];
[mainView addSubview:glview];
CCDirector *director = [CCDirector sharedDirector];
[director setOpenGLView:glview];
CCScene *scene = [CCScene node];
id node = [LayerExample node];
[scene addChild: node];
[director runWithScene:scene];
state = kStateRun;
}
else {
NSLog(@"End the view before running it");
}
}
Как видите, вам нужно создать EAGLView
присоедините к нему директор, а затем просто добавьте это представление в иерархию представлений.