Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to have a selectable map of the world, preferably zoomable, in a cocos2d project. When I tap on a country, I want that country to be selected so that I can perform some other operations with it. It seems that the best approach would be to use a vector world map, but I'm unsure how to implement this with cocos2d. Other options include using map tiles, but it seems that still would require the implementation of country polygons for tap/click detection.

Depending on user input, I want to add icons to various countries on the map.

What is a good way to approach the implementation of this type of map?

share|improve this question

I would likely create CGRects using node/world coordinates, I can never remember which is which until I do it, of where the picture of this place would be. That way instead of creating separate sprite entities for every city you could just create one map with everything on it. Then when you tap the country, you're really just getting the detection against the CGRect in the same position.

I also might instead make a circle or something to place under the countries and create the circle as CCMenus. Alternatively, you could create them as sprites as well that sit under the map.

As far as the zooming in and out and using a vector map I'm not sure. Depending on how much zoom you wanted I don't know if it would be necessary but I'm also not sure what you're doing.

Hopefully there is a better answer than mine because I'm sort of curious as to how someone else would do this.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.