Может ли сцена cocos2d занимать только часть экрана устройства?

#ios #cocos2d-iphone #scene #scenegraph

#iOS #cocos2d-iphone #сцена #график сцены

Вопрос:

Я работаю над экшеном для iOS, в котором игрок перемещается между различными «комнатами», каждая из которых содержится в CCScene. Когда игрок выходит из комнаты, следующая сцена «проскальзывает» на экран с помощью замечательных встроенных переходов, предоставляемых cocos2d.

Проблема в том, что крайне важно, чтобы элементы управления моего пользовательского интерфейса оставались на экране. Они находятся в нижней части экрана, в то время как игровая область находится вверху. Однако, похоже, что на самом деле не существует способа ограничить размер CCScene так, чтобы он занимал только часть экрана.

Я надеялся, что смогу просто сказать cocos2d, чтобы узел CCScene занимал пространство, меньшее, чем полный экран:

 CCScene* scene = [CCScene node];
scene.contentSize = CGSizeMake(200, 200);
  

Но пока ничего подобного не сработало. CCScene всегда занимает весь экран. Я даже не против, если мне придется полностью переместить элементы управления пользовательского интерфейса из cocos2d, чтобы заставить это работать, используя контроллеры просмотра, а что нет. Но прямо сейчас мне любопытно, возможно ли то, что я пытаюсь сделать, вообще в cocos2d.

Ответ №1:

Пожалуйста, взгляните на EAGLViewTest в каталоге cocos2d tests. Целью этого тестового проекта является использование cocos2d только в указанной прямоугольной области. Это задается EAGLView. И вы можете использовать Interface Builder для этого.

Комментарии:

1. Спасибо — надеюсь, это то, что мне нужно. К сожалению, похоже, что EAGLViewTest на самом деле не работает в текущем выпуске cocos2d (1.0.0rc2) Происходит сбой при вызове [CCConfiguration checkForGLExtension]. Если у вас есть какие-либо рабочие образцы, которыми вы могли бы поделиться, это было бы здорово. Спасибо!

2. Я уже отправил запрос на извлечение для этого 🙂 » Исправлен EAGLViewTest » Не могли бы вы попробовать добавить опцию ObjC к OTHER_LDFLAGS цели EAGLViewTest?

3. Она была объединена. ‘ разработка коммитов ветки