В моей игре много спрайтов, у которых есть тела в мире b2. и чтобы обнаружить прикосновение, я делаю следующее:
currentPosition = [[CCDirector sharedDirector] convertToGL: currentPosition];
b2Vec2 locationWorld = b2Vec2(currentPosition.x/PTM_RATIO, currentPosition.y/PTM_RATIO);
for (b2Body* b = world->GetBodyList(); b; b = b->GetNext())
{
b2Fixture *bf1 = b->GetFixtureList();
if (bf1->TestPoint(locationWorld) )
{
CCSprite *tempSprite = (CCSprite *) b->GetUserData();
if (tempSprite.tag==2 )
{
Теперь, поскольку тело моего спрайта слишком маленькое, и он движется, очень трудно дотронуться до него во время движения, поэтому мне нужно изменить этот код, чтобы обнаружить широкую область вокруг этого спрайта тоже.
Как расширить тестовую точку, чтобы она была + - больше 50 пикселей ??
спасибо большое.