Войти
iPhoneФорум

Cocos2d (проблемы и решения) (2 стр)

Страницы: 1 2
#15
20:06, 27 авг 2010

Ну у меня тоже была такая задача. В итоге, когда стали тестировать на устройстве, оказалось, что проблема надуманная.

#16
21:13, 27 авг 2010

У меня, к сожалению, косячок заметен.

#17
21:51, 27 авг 2010

Diman3d
> У меня, к сожалению, косячок заметен.
Смысл в том, что не обязательно сильно заморачиваться, например, если кнопка какой-то правильной геометрической формы, то можно считать хит тест с этой формой. Т.е. если примерно эллипс, то считать хиттест с эллипсом и т.д. А на практике маска редко нужна.

#18
23:25, 27 авг 2010

Согласен с тобой, можно обойтись и без маски.

CGMutablePathRef pathButton = CGPathCreateMutable();
    
CGPathMoveToPoint(pathButton, NULL, vertices[0].x, vertices[0].y);
CGPathAddLineToPoint(pathButton, NULL, vertices[1].x, vertices[1].y);
CGPathAddLineToPoint(pathButton, NULL, vertices[2].x, vertices[2].y);
CGPathAddLineToPoint(pathButton, NULL, vertices[3].x, vertices[3].y);
CGPathCloseSubpath(pathButton);
    
if (CGPathContainsPoint(pathButton, NULL, local, FALSE)) return item;
    
CGPathRelease(pathButton);

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

p.s. просто у меня как раз такая ситуация, когда кнопки находятся близко к друг другу, и если нажать на краешек одной, то загорается другая.

#19
1:36, 22 окт 2010

Если кнопки так рядом, уверены ли вы, что не будет проблем с тачем "толстыми потными пальцами"?
Мне кажется разумнее разнести кнопки подальше и делать хит-тест по ректу/эллипсу/окружности.

#20
12:13, 25 окт 2010

Если где-то между кнопками тач, то какая-то одна выбирается и всё.

#21
20:47, 26 окт 2010

кстати, кто-нибудь пробовал отрисовывать спрайт "ручками" без добавления к сцене через addChild ?
у меня при попытке обратится к такому спрайту все тупо падает в EXC_BAD_ACCESS.
если же его добавить к сцене, то все работает отлично и скажем обращение [cocosGuy draw] отлично рисует спрайт в точке 0,0 (в добавление к тому, которые рисуется из чайлдов).

Страницы: 1 2
iPhoneФорум

Тема в архиве.