Форум программистов, компьютерный форум CyberForum.ru

Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
 
SnowyWhite
2 / 2 / 0
Регистрация: 18.01.2012
Сообщений: 51
#1

Cocos2d & XCode Interface Builder - Программирование iOS

07.09.2013, 09:40. Просмотров 742. Ответов 2
Метки нет (Все метки)

Как заставить Cocos2d запускаться в окне, которое я создал в Interface Builder in XCode?
Вот нарисованное окошко:
Screenshot
Cocos2d & XCode Interface Builder

Нужно что-бы сцена запускалась в этом окне, в CCGLView.
В файле AppDelegat.h указал все свойства. Получилось так
AppDelegat.h
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#import "cocos2d.h"
 
@interface TestCocosAppDelegate : NSObject <NSApplicationDelegate>
{
    CCGLView *glview;
    NSWindow *window;
    NSButton *pushButton;
    NSTextField *textEditor;
}
 
@property (assign) IBOutlet CCGLView *glview;
@property (assign) IBOutlet NSWindow *window;
@property (assign) IBOutlet NSButton *pushButton;
@property (assign) IBOutlet NSTextField *textEditor;
 
- (IBAction)toggleFullScreen:(id)sender;
 
@end

Далее изменил файл AppDelegat.m.
AppDelegat.m
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#import "AppDelegate.h"
#import "HelloWorldLayer.h"
 
@implementation TestCocosAppDelegate
 
@synthesize glview;
@synthesize window;
@synthesize pushButton;
@synthesize textEditor;
 
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
    CCDirectorMac *director = (CCDirectorMac*) [CCDirector sharedDirector];
 
    [director setDisplayStats:YES];
    [director setView:glview];
    [director setResizeMode:kCCDirectorResize_AutoScale];
    
    
    [window setAcceptsMouseMovedEvents:NO];
    [window center];
    
    [director runWithScene:[HelloWorldLayer scene]];
}
 
- (BOOL) applicationShouldTerminateAfterLastWindowClosed: (NSApplication *) theApplication
{
    return YES;
}
 
- (void)dealloc
{
    [[CCDirector sharedDirector] end];
    [window release];
    [super dealloc];
}
 
#pragma mark AppDelegate - IBActions
 
- (IBAction)toggleFullScreen: (id)sender
{
    CCDirectorMac *director = (CCDirectorMac*) [CCDirector sharedDirector];
    [director setFullScreen: ! [director isFullScreen] ];
}
 
@end

При запуске программа вылетает. Получаю следующее
Error
libGL.dylib`glClear:
0x7fff9211eabd: pushq %rbp
0x7fff9211eabe: movq %rsp, %rbp
0x7fff9211eac1: movl %edi, %eax
0x7fff9211eac3: movq %gs:240, %rcx
0x7fff9211eacc: movq (%rcx), %rdi
0x7fff9211eacf: movq 88(%rcx), %rcx
0x7fff9211ead3: movl %eax, %esi
0x7fff9211ead5: popq %rbp
0x7fff9211ead6: jmpq *%rcx

Если закоментировать в AppDelegat.m строку
Objective-C
1
//[director runWithScene:[HelloWorldLayer scene]];
, то программа запускается, но не в том окне, которое создал я. Появляется просто белое окно.
Screenshot
Cocos2d & XCode Interface Builder

Только начинаю Obj-C учить. Как это правильно реализовать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.09.2013, 09:40     Cocos2d & XCode Interface Builder
Посмотрите здесь:
Objective-C Interface Builder 4.2
Objective-C Не запускается Interface Builder
Cocos2d и Cocos2dx
Подскажите ресурсы/документацию по Cocos2D
Objective-C Cocos2D 3.0 его CCSprite и tag к нему
Cocos2d - подскажите хорошие учебники для начинающих с нуля? Objective-C
@interface и @property Objective-C
При компиляции нового (не измененного) проекта на движке Cocos2D выскакивает ошибка
о Xcode
XCode 8
XCode 4.2

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dan_banan_
10 / 10 / 1
Регистрация: 03.03.2013
Сообщений: 87
Записей в блоге: 1
14.09.2013, 04:45     Cocos2d & XCode Interface Builder #2
что бы заставить его запускаться надо наверно скачать готовый пример и посмотреть как там реализовано) Подчеркиваю внимательно посмотреть) Есть демо игрушка на кокосе , запрос в гугле будет выглядеть примерно так: demo cocos 2d))
SnowyWhite
2 / 2 / 0
Регистрация: 18.01.2012
Сообщений: 51
15.09.2013, 15:28  [ТС]     Cocos2d & XCode Interface Builder #3
Искал. Ничего толкового не нашел.
Раньше, кажется, при создании Cocos2d проекта, создавался *.xib файл, в котором уже был NSOpenGLView. Сейчас такого файла нету.
А как вообще отобразить созданное в IB окно?
Yandex
Объявления
15.09.2013, 15:28     Cocos2d & XCode Interface Builder
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru