Разместите спрайт относительно точки на экране, а не на карте - PullRequest
0 голосов
/ 20 января 2012

В Cocos2D я бы хотел, чтобы спрайт размещался на экранной координате, а не на карте.Я думал, что смогу получить с помощью convertToNodeSpace, но, похоже, он не делает то, что я хочу.

Я думал, что это должно поместить спрайт в середину экрана iPad:

selectionScreenOverlaySprite.position = [self convertToNodeSpace:CGPointMake(512, 384)];

Но это не так.Это также помещает это в другое место в зависимости от размера моей карты.Кто-нибудь знает, что я должен использовать?Я также пытался: convertToWorldSpace, convertToNodeSpaceAR и convertToWorldSpaceAR.

1 Ответ

1 голос
/ 20 января 2012

Попробуйте:

CGSize wins = [[CCDirector sharedDirector] winSize];
[yourSprite setPosition:CGPointMake(wins.width / 2, wins.height / 2)];

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

...