最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【Unity2D】關(guān)卡編輯好幫手——TileMap

2018-09-07 17:36 作者:皮皮關(guān)做游戲  | 我要投稿

作者:林玉偉


前言

對于Unity新手來說,最能給到自己成就感的無疑是快速搭建一個屬于自己的整體關(guān)卡,因此本文的主角是「TileMap」這樣一個利器。如果沒有它,開發(fā)者要么只有用最笨的方法手動逐一搭建,要么自己寫編輯器,要么借助于第三方編輯軟件,而這三種方法其實對初學(xué)者都不是很友好。

本文主要介紹了「TileMap」的基本使用。你可以在更多的開源圖片素材網(wǎng)站,或是Unity的AssetStore中下載免費的Tile資源。



什么是TileMap

TileMap是Unity5.5a實驗版加入的新功能,就像他的字面意思「瓦片地圖」。但說起來這個技術(shù)并不“新”了,成熟的2D引擎(諸如gamemaker,RpgMaker),輕量的如pico-8這樣的基于html5引擎也是帶有自己自己的tile編輯器的,第三方的編輯工具如Tiled使用起來也是比較方便的,Tile編輯器界的老牌開源編輯器Tiled,很多引擎也提供Tiled導(dǎo)入的支持。

一個成熟的2d游戲引擎基本都有內(nèi)置的Tlie編輯器


最早使用「TileMap」來編輯游戲場景技術(shù)的游戲甚至可以追溯到FC時代。即使在今天也有許多基于「TileMap」制作的游戲,像是最近IGN滿分的《Celeste》,甚至是《饑荒》。什么,《饑荒》?聽起來是不是畫風(fēng)不對啊,但你如果有心去Google上搜索《Don't starve TIles》,你也許會看到一些受版權(quán)保護的饑荒的tile貼圖文件,當然你做過《饑荒》或是其他的一些2D游戲mod就更清楚了。

《奧日與奇幻森林》

當然,使用這種方式的缺點也是顯然易見的,使用tile制作的內(nèi)容看起來有些機械和重復(fù),但是可以通過創(chuàng)建過渡層或者其他黑科技來改善這個問題,這在Unity中也是相對容易做到的。

方法很多,像是《奧日與奇幻森林》,《光之子》這類精美的2D混合3D的游戲,都是使用自己獨有的方式來組織關(guān)卡,具體使用的什么我不太了解,可能類似于2D Terrian這樣方式,這一切取決與你自己。


Unity中的「TileMap」

在Unity中使用「TileMap」十分方便,它由以下五個基本部分組成:

  • Sprite(精靈):2d中紋理的容器。

  • Tile(瓦片):它包含一個精靈,以及顏色和碰撞體類型。

  • Palette(調(diào)色板):Palette的功能就是保存tile,將它們繪制到網(wǎng)格上。

  • Brush(筆刷):就像任何繪畫軟件一樣,用于將預(yù)制的筆刷繪制到畫布上,也和許多繪圖軟件一樣,可以自定義筆刷(這里篇幅有限,只使用默認筆刷,將會在之后的章節(jié)中講解擴展筆刷的使用)。

  • Tilemap(瓦片地圖):和許多繪畫軟件的圖層概念一樣,我們畫任何東西都需要一個圖層。可以在Tilemap這個層上繪制Tile。

  • Grid(網(wǎng)格):用于控制網(wǎng)格屬性的組件。Tilemap是Grid的子對象。

TileMap使用流程

1.這里我們先創(chuàng)建一個Unity2d工程。

在Assets目錄下創(chuàng)建Resource文件夾并在它之下分別創(chuàng)建TileAssets和TileSprite文件夾,你可以隨自己喜好創(chuàng)建自己的文件夾命名,需要注意的是Resource文件夾屬于特殊文件夾的命名。

2.創(chuàng)建TileMap使用的資源

我使用的都是單獨的圖片資源,所以不涉及到切割圖集的操作,在圖片的Inspecter面板里將TextureType設(shè)置成Sprite,PixelPerUnit設(shè)置成256。

3.在場景中創(chuàng)建TileMap

依次點擊菜單項GameObject -> 2D Object -> Tilemap創(chuàng)建「TileMap」,或直接在Hierarchy面板直接右鍵2D Object -> Tilemap創(chuàng)建

此時hierarchy面板上將會新建一個Gird對象,和Gird附帶的默認名為“Tilemap”的子對象,Gird對象上有一個Gird組件,包含了網(wǎng)格信息。

我們將在Tilemap這一層上繪制瓦片,可以在Gird對象上右鍵創(chuàng)建一個新的Tilemap層

或依次點擊菜單項GameObject -> 2D Object-> Tile Map直接新建Tile Map。



4.創(chuàng)建TilemapPalette


依次點擊菜單項Window > Tilemap Palette打開Tilemap Palette:

這時會出現(xiàn)一個TilePalette窗口,單擊Tile Palette左上角的下拉列表的“+”按鈕新建Tile Palette,命名為BackGround點擊Create:


這時會彈出一個對話窗口,選擇tileAssets文件夾并保存,tileAssets文件夾里會生成一個BackGorund預(yù)制體。

把之前準備的Spiret拖進TilePalette里,會彈出一個對話窗,一樣的保存到tileAssets的文件夾里 中會生成新的Tile類型資源,該資源會顯示在Tilemap Palette中。

TilePalette中可以找到用來繪制Tile的繪圖工具:


從左至右依次為選擇選擇工具,移動工具,繪制工具,矩形工具,選取工具,擦除工具和填充工具

  • 選擇工具用來選擇Tile資源更改屬性。

  • 移動工具用于移動選中的Tile資源。

  • 矩形工具用于繪制矩形塊,并由選定的Tile資源來填充。

  • 選取工具用于選取要繪制的Tile資源,按下左鍵并拖拽可以一次選取多個Tile。

  • 擦除工具用于擦除Tile資源。

  • 填充工具用于將選定區(qū)域填充為選定的Tile資源。

TilePalette面板上有一個Edit,如果選上的話可以編輯在TilePalette面板中的Tile資源。


繪制


將之前新建的兩個“Tilemap”分別命名為“Path”和“Floor”,將Inspector面板中Path的TilemapRenderer選項的OrderinLayer改為1,Path圖層的Tile會繪制在Floor圖層之上。

TilePalette窗口的ActiveTileMap對應(yīng)的剛才創(chuàng)建的Tilemap圖層,在這里可以切換要繪制的圖層,或者直接在Hierarchy面板選擇要繪制的層。

在TilePalette窗口點擊「選取工具」選中要繪制的一個或多個Tile后直接在Scene窗口直接左鍵畫上去就好了。

需要注意的是Scene窗口右下角有一個FocusOn小窗口,有None,TileMap,Gird選項,就像他的字面意思,它的作用是只顯示TileMap的內(nèi)容,將其他物體變灰。一般選擇Tilemap,這樣能保證Tilemap,這樣能確保繪制在正確的圖層。

最后自己動手試一下吧,最后記得保存場景。

擴展

Unity官方提供了一個2d-Extre包:https://github.com/Unity-Technologies/2d-extras,里面有許多寫好的筆刷,基本上都是繼承自TileBase類來擴展的筆刷,如果有興趣的話,我會在之后的章節(jié)來講解如何擴展筆刷,這里需要你準備Unity2017.2以上的版本。


最后想系統(tǒng)學(xué)習(xí)游戲開發(fā)的童鞋,歡迎訪問 http://levelpp.com/  

游戲開發(fā)攪基QQ群:869551769 

微信公眾號:皮皮關(guān)

【Unity2D】關(guān)卡編輯好幫手——TileMap的評論 (共 條)

分享到微博請遵守國家法律
赞皇县| 达日县| 海淀区| 文昌市| 临猗县| 曲水县| 鹿邑县| 调兵山市| 嘉禾县| 边坝县| 洪江市| 河南省| 乐平市| 开鲁县| 婺源县| 凉城县| 禹州市| 海原县| 寻乌县| 青阳县| 乌审旗| 洛南县| 革吉县| 崇礼县| 屯门区| 九寨沟县| 广南县| 江陵县| 江都市| 加查县| 张家界市| 百色市| 富锦市| 张家界市| 江都市| 郴州市| 专栏| 保山市| 铅山县| 蕉岭县| 黄陵县|