您好,登錄后才能下訂單哦!
本文實(shí)踐自 Ray Wenderlich 的文章《How To Make a Tile-Based Game with Cocos2D》,文中使用Cocos2D,我在這里使用Cocos2D-x 2.0.4進(jìn)行學(xué)習(xí)和移植。這個(gè)游戲是關(guān)于一個(gè)忍者在沙漠中尋找西瓜的故事。
在這部分內(nèi)容,將會(huì)學(xué)習(xí)到如何用Tile創(chuàng)建一個(gè)地圖,如何加載地圖到游戲,如何讓地圖跟隨玩家滾動(dòng),以及如何使用對象層。下一部分內(nèi)容,將介紹如何在地圖中創(chuàng)建可碰撞的區(qū)域,如何使用Tile屬性,如何創(chuàng)建可拾取的物品和動(dòng)態(tài)修改地圖,以及如何確保忍者不會(huì)吃撐掉。
步驟如下:
1.新建Cocos2d-win32工程,工程名為"TileGame",去除"Box2D"選項(xiàng),勾選"Simple Audio Engine in Cocos Denshion"選項(xiàng);
2.下載本游戲所需的資源,將資源放置"Resources"目錄下;
3.使用Tiled工具制作地圖。首先,下載開源的Tiled Map Editor工具,當(dāng)前版本為0.8.1,建議使用QT版本。在Tiled工具,點(diǎn)擊菜單欄→"文件"→"新文件",在彈出的對話框中,填入如下內(nèi)容:
地圖方向分為:正常、45度。地圖大小填入的是tile單位。塊大小是資源每個(gè)tile的實(shí)際像素大小,在本篇中,使用32x32大小。點(diǎn)擊"確定"。
4.接著,把所需要的tile集合加入到工具中。菜單欄→"地圖"→"新圖塊",填入如下內(nèi)容:
點(diǎn)擊"瀏覽",選擇"Resources"目錄下的tmw_desert_spacing.png文件,會(huì)自動(dòng)填充"名稱"內(nèi)容。塊的寬高都為32像素。邊距就是當(dāng)前tile塊開始計(jì)算實(shí)際像素時(shí),應(yīng)該跳過多少像素,寬高一樣。間距就是兩個(gè)tile塊之間的像素距離,寬高一樣??纯?span >tmw_desert_spacing.png文件,可以看到每個(gè)tile塊都1像素的黑色邊框,這就是為什么要設(shè)置邊距和間距為1像素。
點(diǎn)擊"確定"。
5.可以看到tile塊出現(xiàn)在"圖塊"窗口中?,F(xiàn)在可以開始畫地圖。點(diǎn)擊菜單欄→"視圖"→"顯示網(wǎng)格",可以開啟網(wǎng)格參照線。點(diǎn)擊工具欄"圖章刷",然后在"圖塊"窗口點(diǎn)選一個(gè)tile塊,接著在地圖中,點(diǎn)擊放入你所想要的位置。
用工具欄"填充",把地圖背景填充成同一個(gè)tile塊,這里為沙漠背景。可以從"圖塊"窗口點(diǎn)選多個(gè)tile塊,可按Ctrl鍵多選,這樣可以一次性將多個(gè)tile塊放入地圖中。進(jìn)行制作地圖,確保至少有一對建筑在地圖上,因?yàn)楹竺嫘枰恍〇|西來做碰撞。一旦完成了地圖的制作,雙擊"圖層"窗口中的當(dāng)前層"塊層 1",重命名為"Background"。然后點(diǎn)擊工具欄"保存",命名為"TileMap.tmx",保存在"Resources"目錄下。
6.將Tile地圖加入到場景中。在HelloWorldScene.h文件中,添加如下代碼:
CC_SYNTHESIZE_RETAIN(cocos2d::CCTMXTiledMap*, _tilemap, Tilemap);
CC_SYNTHESIZE_RETAIN(cocos2d::CCTMXLayer*, _background, Background);
在HelloWorldScene.cpp文件中,構(gòu)造函數(shù)添加如下:
HelloWorld::HelloWorld()
{
_tilemap = NULL;
_background = NULL;
}
初始化init函數(shù),修改如下:
2 3 4 5 6 7 8 9 10 11 12 13 14 15 向AI問一下細(xì)節(jié)
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。 猜你喜歡最新資訊
相關(guān)推薦
相關(guān)標(biāo)簽AI
助 手 |