Я работаю с модифицированной версией Cocos2D 0.99.5. Ничего не изменилось в этой модифицированной версии, поскольку позиции идут, но когда я включил сетчатку, карты tmx отображаются хорошо, но обнаруженные плитки, скорее всего, с использованием tileGIDAt и позиций с ccp, а также спрайты позиционирования уходят. Это известная ситуация, в которой я провел некоторые исследования, но не знаю, как проще ее преодолеть. Я надеюсь отредактировать несколько вещей в Cocos2D (используя точки вместо пикселей при использовании сетчатки), чтобы решить эту проблему, но я ничего не видел в Интернете, который упоминает об этом.Cocos2D: Обновление позиций для сетчатки
Я видел некоторый код разделить положение объекта на CC_CONTENT_SCALE_FACTOR
CGPoint objectPosition = [tmxLayer positionAt:objectTile];
if (CC_CONTENT_SCALE_FACTOR() == 2){
objectPosition.x /= CC_CONTENT_SCALE_FACTOR();
objectPosition.y /= CC_CONTENT_SCALE_FACTOR();
}
После проверки некоторых методов в Cocos2D я действительно не знаю, где это использовать. Итак, какие точные обновления мне нужно сделать и где мне нужно их поместить?
Вы работаете с версией cocos2d, которой больше 3 лет .. почему? FWIW вам может быть лучше сделать решительный шаг и, по крайней мере, обновить до версии 1.1, если не 2.x. – LearnCocos2D
Удастся ли решить эту проблему? Я попытался обновить до 2.x, но было слишком много вещей, которые не совместимы, поскольку у меня есть сотни файлов кода. – VagueExplanation
Не знаю, но 1.1 и 2.x определенно имеют больше исправлений/лучшую поддержку Retina. Ваша версия определенно не поддерживает iPad Retina и широкоформатные телефоны. Что касается изменений, большинство из них будут переименованы в классы/методы, функциональность осталась в основном одинаковой. Вы всегда можете попробовать сначала обновить до 1.0.1 или 1.1, а затем обновить его до 2.x. – LearnCocos2D