Суббота, 20.04.2024, 09:44
Приветствую Вас Гость

Программирование

Меню сайта
Наш опрос
Оцените мой сайт
Всего ответов: 0
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Главная » 2015 » Сентябрь » 14 » Движущаяся камера в Cocos2d
08:45
Движущаяся камера в Cocos2d
Где-то тут уже было про огромное комьюнити и "отличную" документацию кокоса... В общем не буду тут писать, сколько "хороших" слов было произнесено в процессе поиска решения.Камеру можно прикрепить, например, к спрайту. Делается это так:[self runAction: [CCFollow actionWithTarget:sprite worldBoundary:CGRectMake(0, -160, [CCDirector sharedDirector].winSize.width, [CCDirector sharedDirector].winSize.height*2)]];Этот селектор вызывается у CCLayer. Прямоугольник это область, в которой камере можно двигаться.В стандартном темплэйте эту строку можно поместить в конце -(void) addNewSpriteWithCoords:(CGPoint)p и камера будет следовать за кубиками.Но это не все. Так как картинка сместилась, координаты экрана не совпадают с координатами сцены. Все поиски по официальной документации кокоса ведут к статье Getting correct touch coordinates when moving/scaling a camera (Landscape), которая уже мхом обросла от "свежести".[self.camera centerX:&centerX centerY:&centerY centerZ:&centerZ] возвращает нули и естественно ничего не работает.Есть удобный способ получения координат, но нашел я его буквально шарясь в исходниках кокоса:location = [self convertToNodeSpace:location];Можно также конвертить сразу в мировые координаты, которые измеряются в кокосометрах, и еще во что-то там, ищите соответствующие селекторы, начинающиеся на convertTo.UPD. [self.camera centerX:&centerX centerY:&centerY centerZ:&centerZ] возможно возвращает какие-то другие координаты камеры, а не те, которые меняет CCFollow, но в достаточно свежих постах на кокосовском форуме код из статьи все еще мелькает с незначительными модификациями.
Просмотров: 385 | Добавил: admin | Рейтинг: 0.0/0
Всего комментариев: 0
avatar
Вход на сайт

Поиск
Календарь
«  Сентябрь 2015  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
282930
Архив записей