影片網址:https://youtu.be/S3K6yfawDLw。
影片所示,是在大約 2011 年 8 月左右,嘗試使用 Unity 來實現 2D 地圖自動拼接的測試專案,依照時間推算,當時的 Unity 版本應該是 3.4 或者更早以前的版本。
在 Unity 4.3 之前,因為還沒有 Native 2D Tools,所以想要實現 2D 遊戲製作的話,需要處理的手續會比較多一些,基本上,就是固定視角的 3D 遊戲場景。
而如今的 Unity 遠比當時方便、強大很多,想要實現相同的功能,可選擇的做法也更多;雖然,影片錄製是使用 Unity 5.4.1f1 來展示,但該專案內容仍保持是 Unity 3.x 的製作內容,同時,程式是使用 Unity 的 Javascript 撰寫的,所以,其中的製程可能已不太值得借鏡。
以下,就大致說明一下這個實作裡所使用的原理。
首先,編排一張如下圖編號的地形圖片:
灰色代表地圖圖素,白色為透明簍空區域 |
每次點擊到編輯區域內,會一次貼上四個圖片,基本上,如果是在空白區域,就是貼上號碼為 4、8、1、2 的圖片來組合出最小塊的地圖。
組合最小地圖塊 |
另外,在刪除地圖的部分,需要挖空不要的區域,又要能使保留的區域圖片能夠正常拼接,所以,基本上在挖除地圖的位置上也是貼上一組基本的 11、7、14、13 圖片來組合出地圖的空洞。
組合最小空洞 |
以上,雖然沒有提供程式碼與檔案下載,但主要還是希望能透過一些展示與說明來分享開發上的想法與經驗,還請大家未來也能多多關注新的分享。