我正在尝试将我的角色精灵的像素坐标转换为网格坐标,以便我可以检查用户是否正在触摸地图上的某个图块。
这是我的代码:
CGPoint mappos = [tileMapNode convertToNodeSpace:position];
mappos.x = (int) mappos.x / tileWidth;
mappos.y = (int) mappos.y / tileWidth;
CCTMXLayer *metaLayer = [tileMapNode layerNamed:@"Meta"];
CCSprite *metaTile = [metaLayer tileAt:ccp(mappos.x, mappos.y)];
if (metaTile)
{
NSLog(@"HIT!");
}
由于某种原因,字符位置与网格坐标没有正确对齐。这是为什么?