叉叉谷物語-Day 02
搭建核心功能-地圖繪制與管理
格子分層
暫定分為四層,分別是碰撞層,事件層,NPC層,陰影層.
其中碰撞層指定玩家與角色能夠走哪些格子
事件層決定事件的觸發(fā),
Npc層也許存在事件,也許不存在,但是NPC可能自由移動
陰影層決定玩家在哪些格子會讓物體半透明化,這樣可以方便看見玩家在遮擋物后方.
地圖繪制
使用Tilemap來繪制地圖,使用SO來存儲地圖信息
Tilemap分層
Ground - 地板層
GroundUpper - 地板上的一層,例如地板上的花花草草,水面等
Instance-Tilemap實體層,與角色在同一層
Top - 頂層,高于實體層,一般顯示在實體層上面
Collider - 靜態(tài)碰撞層,主要用于在Tilemap中完成碰撞體的注冊,禁止玩家和NPC走過
Instance游戲?qū)ο髮?/span>
這里主要完成非Tilemap類物體注冊,這些物體一般有著額外的邏輯,例如Npc之類的
地圖模板存儲信息模板
使用ScriptableObject實現(xiàn)
創(chuàng)建Editor工具來完成地圖信息存儲

效果良好
對存儲的地圖信息做反序列化
創(chuàng)建場景管理器
創(chuàng)建TileBase管理器
注:之后會將使用到的Tile匯總,但是暫時不做這個東西.先假設(shè)所有tile都在同一個目錄下
對地圖信息做反序列化
注:實體對象需要復(fù)雜的反序列化方法,因此暫時沒做實體對象的反序列化
?
為地圖編輯器添加繪制地圖與清空瓦片的功能

運行良好
今日到此為止了
標簽: