准備
Tiled Map Editor:http://www.mapeditor.org/
通用的瓦片地圖編輯器,基於xml格式,支持正交視圖和等軸測圖
瓦片地圖由單個瓦片組成的2D游戲世界,使用少量尺寸相同的圖像就可以創建出很大的游戲世界,這樣可以為大地圖節省內存,在手機和平板這樣的設備上使用很占優勢。在早期的計算機游戲中,出現了很多使用瓦片地圖的經典游戲。
下圖中僅使用了三個瓦片就構建了一坦克大戰的游戲地圖。
瓦片地圖的編輯工作通常通過編輯器來完成,cocos2d-x支持Tiled的地圖編輯器。跟cocos2d-x一樣,是免費,開源的。Tiled能夠編輯直角瓦片和多層的斜角瓦片地圖,並且能夠添加觸發區域和對象,以及定義瓦片的屬性以及在代碼中確定瓦片的類型。
方形圖像的瓦片地圖可通過增加過渡瓦片來進行改進,例如,比起把一個水瓦片放在一個草地瓦片旁邊,可以過添加混合瓦片(瓦片的一邊是水,一邊是草地,中間是海岸線)來創建更好的過渡效果。瓦片的設計需要花費很多的心思的。
瓦片不一定是正方形的,也可以用長方形圖像來創建直角瓦片地圖,使用直角視角,但它允許設計者創建看起來比寬度要高的物體,這可以產生一種深度上的錯覺。斜角瓦片地圖更進一步,將視角旋轉了45度,通過一種看起來像3D的方式來創建瓦片,使用游戲世界獲得了視覺上的深度感。
下圖就是45度視角的地圖,在視覺上看起來更像是3D的。
斜角瓦片地圖證明了瓦片地圖不一定都是平面的,你甚至可以用正方形的瓦片地圖來獲得相似的效果,只要每個瓦片被設計成可以無縫疊加起來,正因為如此,tiled支持多層的瓦片以創建非常逼真的3D外觀。
手上沒有什么好的素材,所以在網上搜索了一張圖片,使用正常的地圖方向創建一張地圖。
將這層命名為Ground,方便以后在代碼中調用這層的瓦片對象,再添加一層,命名為Object,在這一層中,添加兩個木樁。
創建好地圖后,把*.tmx文件和圖片文件放在Resource目錄,在代碼中只需要一句話就可以加載到游戲中
CCTMXTiledMap *Map = CCTMXTiledMap::create("map2.tmx");
addChild(Map);
准備好我們的主人公,英雄出場。下圖是一個四方向人物行走圖。下一篇開始把英雄加載到游戲場景中,讓英雄在場景里面走動起來。
這是加載的英雄效果圖:
備注:
共同學習,若有不正確之處,歡迎指出。轉載請注明來處:www.cnblogs.com/dekins