Tiled2Unity是為使用unity3d引擎的游戲制作者提供的游戲地圖創(chuàng)建插件這款插件可以快速制作快關(guān)卡地圖,作為一款第三方的Tiled for Unity庫(kù),這款插件可以方便用戶建立統(tǒng)一的prefabs,支持將tiled導(dǎo)入到unity3d中使用,兼容主流的文件格式,包括xml、csv等,可支持導(dǎo)出的導(dǎo)為多邊形、矩形以及圓等。
插件優(yōu)勢(shì):
1. 完全開源,完全免費(fèi)。
2. 允許自定義腳本來完成更復(fù)雜的導(dǎo)入需求
一般來說,每個(gè)游戲都有自己的一套地圖邏輯,與其提供大量的自定義標(biāo)簽,Tiled2Unity選擇使用自定義腳本來實(shí)現(xiàn)這個(gè)需求。
3. 詳盡的教程和文檔
Tiled2Unity 提供了還算比較詳細(xì)的使用文檔和教程,以及自己的設(shè)計(jì)思路。
4. 自定義Unity標(biāo)簽
通過簡(jiǎn)單的自定義屬性,可以方便的修改Tag,SortingLayer,Layer等屬性。
5. 自動(dòng)合并圖塊為Mesh
與很多別的插件的做法不同,Tiled2Unity不是用Sprite來表示每一個(gè)圖塊,而是將同一層的圖塊都合并成一個(gè)Mesh,然后把整個(gè)圖集作為紋理(Texture)貼到Mesh上。
這樣做的好處是,大大減少GameObject的數(shù)量。比如,一個(gè)40x40的圖,如果圖塊覆蓋率是50%,使用Sprite對(duì)象的話,那就會(huì)產(chǎn)生800個(gè)對(duì)象,而用Tiled2Unity的方法,每一層(Layer)只產(chǎn)生1-2個(gè)對(duì)象(如果有碰撞盒)
6. 提供命令行工具,便于自動(dòng)化導(dǎo)入
7. 自動(dòng)合并碰撞盒
除了合并同層的圖塊,Tiled2Unity還會(huì)自動(dòng)合并同層碰撞盒。
利用一個(gè)第三方庫(kù)Clipper (http://www.angusj.com/delphi/clipper.php),Tiled2Unity可將帶有矩形或者多邊形碰撞盒的圖塊,合并成到同一個(gè)多邊形碰撞盒。這樣就大大減少了Collider組件的數(shù)量。
插件特色:
1、多邊形碰撞可以是凹的,有洞,由獨(dú)立的多邊形組成
2、可以分配標(biāo)簽,分類層,層序,和(物理)層的輸出的游戲?qū)ο笸ㄟ^屬性
3、多層和tilesets支持
4、易于使用:在大多數(shù)情況下,您只需將TMX文件導(dǎo)出到Unity項(xiàng)目中,并將自動(dòng)生成的預(yù)置在您的場(chǎng)景中——無需進(jìn)一步編輯
5、瓷磚層的碰撞支持(有斜坡,形狀古怪的多邊形)
6、在TMX映射文件中構(gòu)建一個(gè)統(tǒng)一的預(yù)制程序
7、支持所有TMX層格式(XML、CSV、Base64、gzip / zlib壓縮)
8、支持建立統(tǒng)一的Prefabs
9、導(dǎo)出對(duì)象層為多邊形、多線、矩形、圓
使用說明:
使用T2U時(shí)遇到點(diǎn)麻煩,打開T2U界面顯示如下,注意上方黃底文字,需要在Tiled中添加命令行才能使用T2U。
在Tiled工具欄點(diǎn)擊
(執(zhí)行命令)圖樣下拉按鈕添加新的命令行。
命令行代碼:
"E:\U2T\Tiled2Unity.exe" %mapfile F:\Cafe\cafe\Assets\Tiled2Unity
其中
"E:\U2T\Tiled2Unity.exe" //Tiled2Unity應(yīng)用程序地址%mapfile //映射等待轉(zhuǎn)換的Tiled文件F:\Cafe\cafe\Assets\Tiled2Unity //轉(zhuǎn)換目的地址,即轉(zhuǎn)換到Unity項(xiàng)目文件中
注意:轉(zhuǎn)換目的文件夾名據(jù)說必須為"Tiled2Unity"(如上),從其他人的博客看到的。試了一下中用其他文件夾名確實(shí)會(huì)報(bào)path valid,官方文檔沒有說明這一點(diǎn)。
地圖編輯完畢后,點(diǎn)擊執(zhí)行命令按鈕(快捷鍵F5),運(yùn)行T2U
轉(zhuǎn)換成功。點(diǎn)擊Big Ass Export Button導(dǎo)入U(xiǎn)nity:
Prefab文件夾: