У меня странный опыт работы с Cocos2D. Я не могу изобразить/построить точку в точке x = 0 или y = 0. Мне нужно переместить ее внутри экрана на одну координату, чтобы быть видимой. Как будто оно отрезано или что-то еще, я действительно не понимаю. Я хочу сделать некоторые пиксельные заготовки, поэтому это очень важно, я думаю, что мне, возможно, понадобится использовать coregraphics ...Кокосовые координаты Cocos2D?
ответ
Cocos2D отображает 1 пиксель в точке 0,0 просто отлично. Вероятно, одна или две вещи вызывают эту проблему:
- Возможно, вы смотрите на дисплей Retina. Cocos2D масштабирует контент на 2x по умолчанию для дисплеев Retina, поэтому «один пиксель» на самом деле представляет собой 4 крошечных пикселя сетчатки. Говоря cocos2d, чтобы нарисовать один пиксель на 0,0 на сетчатке, на самом деле рисует пиксели по 0,0, -1,0, -1, -1 и 0, -1. (Последние три будут экранированными.)
- Возможно, вы изменили или масштабировали своих родителей
CCNode
(ы) таким образом, чтобы 0,0 фактически считался вне экрана.
Я угадываю его # 1. Невозможно увидеть один пиксель в сетчатке, поэтому вы, вероятно, захотите придерживаться 2x масштабирования. Просто сориентируйте своего родителя CCNode
на одну точку для дисплеев Retina, которые позволят вам начать график в 0,0 в этой локальной системе координат, не беспокоясь о любых смещениях во время графика.
Если @HachiEthan правильно относится к предположению, что # 1 дает вам проблему, упростите себя и расположите спрайты в точках вместо пикселей. –
напишите свой код, пожалуйста. У меня не было проблем с рисованием чего-либо с cocos2d. поместите код чертежа в метод рисования узла. – Morion