unity第n堂

TileMap & random brush

講師自介

水母

  • 北資地社網管
  • 拖延症
  • 好睡
  • pdf

Tile map

Tilemap Collider

組合

git

2D Tilemap Extra Pack

random brush

目錄

Tile map

這是什麼

  • 中文翻譯「瓦片地圖」or「圖塊地圖」
  • 顧名思義由tile(瓦片)和map(格線地圖)組合而成
  • 能更有效率建立遊戲場景

如何建立

  • 在Hierarchy上點右鍵->選「2D Object」->選「Tilemap」->選「Rectangular」

如何建立

  • 點Grid可以看到許多網格出現在Scene裡
  • 右邊的Grid component可以調整一些參數

單個網格長寬

網格間隔

網格類型

空間座標編排

建立TilePalette

  • 要放置Tile首先需要TilePalette
  • 可以理解為儲存各種瓦片的調色盤
  • 按上面的「Windows」 -> 選「2D」->選「Tile Palette」
  • 應該會出現在Inspector旁邊,沒有的話也可以自己把它丟過去

選擇目前編輯的Tile

選擇目前用的調色盤

選擇目前用的筆刷(後面會提到)

建立TilePalette

  • 第一種取得瓦片的方式是去unity asset store
  • 匯入正常來說第一堂你們都聽過了
  • 忘了的去看貝ㄙ簡報
  • 匯入之後如果Pack裡已經有Palette就可以直接在下方選取
  • 沒有的話可以找看看有沒有附檔名是.prefab的,可能沒讀取到
  • if以上都沒有or你有自己的圖像資源要使用,可以將自己要用的瓦片放上Palette
  • 在「選擇目前使用的調色盤」的地方下拉選「Create New Palette」
  • 如果你的Sprite是正方形就直接按Create

如果是長方形就改短邊的Cell Size

(比如長方形x:y是1:0.8,就把y改成0.8)

建立TilePalette

  • 接著在Asset創立兩個資料夾:
    • Tiles:用來存瓦片Assets檔

    • TilePalette:用來存調色盤
  • 在彈出視窗選擇「TilePalette」,你就會獲得一個空白調色盤
  • 如果你的sprite是正方形就將Pixel Per Unit改成sprite大小
  • 如果是長方形就改成長邊的長度
  • 記得按下面的apply
  • 將改好的Sprite直接拖進TilePalette視窗裡

  • 在彈出視窗中選擇Tiles資料,按「選擇資料夾」後就可以使用該瓦片了

如何使用

  • 選取Hierarchy中的「Tilemap」(Grid的子物件)

  • Tile Palette介面的功能很像常見的繪圖軟體的,大家可以自己摸索一下~

選取

(大範圍刪除可使用)

移動選取範圍的Tile

畫筆

選取同時放置瓦片

取色器

(會同時取到Tile跟畫筆)

橡皮擦

(無法大範圍)

封閉區域填充工具

Tilemap Collider

  • 之前上課教過放置角色and加上Collider、Rigidbody等讓角色移動
  • 開始遊戲之後會發現剛剛畫的地圖對角色一點用都沒有
  • 這時候就需要「Tilemap Collider」:D

 

  • 在Add Component搜尋Tilemap Collider 2D並加入

  • 把Rigidbody改成Kinematic或Static

Tilemap Collider

  • 但現在的Collider可能會吃效能也可能會卡到遊戲移動,所以我們要把它變成Composite Collider
  • 把Tilemap Collider 2D的Used By Composite打勾
  • 之後加入Composite Collider 2D

大功告成:D

Tilemap Collider

  • 如果不想要每個tile都有collider的話
  • Tile大小一樣可以在同個Grid底下多開tilemap
  • 不一樣的話可以多開Grid
  • (不過畫的時候要記得選正確的Tilemap喔:D

組合

安裝git

git是一個分散式版本控制軟體

Github的基礎

這裡安裝你電腦的版本

the end

安裝2D Tilemap Extra Pack

  • 字面意思:TileMap的延伸模組
  • 今天要教的是筆刷的延伸
  • 先點上面的windows -> package manager

安裝2D Tilemap Extra Pack

  • 按左上的+,選「Add package from git URL」
  • 輸入https://github.com/Unity-Technologies/2d-extras.git
  • 然後就可以看到有個Package出現在Package Manager裡,旁邊有git標示

Random Brush

  • 當我們需要做一些隨機的地圖的時候,一個一個點就太慢了
  • 這個Package提供了幾種筆刷可以達成這種隨機的效果
  • 先在Assets資料夾裡創一個Brushes資料夾來存筆刷
  • 然後按右鍵 --> Create --> 2D --> Brushes --> Random Brush

Random Brush

  • 點到Tile Palette介面,在筆刷處選擇剛剛新建的筆刷

  • 勾選「Pick Random Tiles」,選取要用的Tiles

  • 選好會發現下面多了你剛剛選的東西,選好就可以把上一步勾選的取消掉了

Random Brush

  • 然後就可以看你需要的範圍在Tile Palette裡隨便選取大小來決定筆刷大小(不用管選取範圍內是否有Tile)

完成啦:D大家可以去快樂的畫地圖ㄌ

下課回家:D

有問題可以問或回家在dc問

unity-Tilemap

By jellyfish

unity-Tilemap

  • 93