1- RPG MAKER的自動磚塊拼接
在目前比較流行的游戲制作工具RPG MAKER里面,做地圖編輯的時(shí)候,有一種特殊的磚塊,不需要手動拼接,而直接用鼠標(biāo)繪制,就自動幫你拼好地塊。
如下圖所示

而這一切是使用下面這張圖片來拼接而成的。RPG MAKER把它保存在RGSS\Standard\Graphics\Autotiles里面。

RPG MAKER本身磚塊是使用32*32的規(guī)格來進(jìn)行組合的,這張AUTOTILE資源,是3*4排列的32*32的圖片。
經(jīng)過觀察發(fā)現(xiàn),上面的圖片是使用下面這個(gè)圖片中的元素按照16*16的大小分割來拼接而成的。
為了驗(yàn)證這個(gè)想法,我做了下面這個(gè)圖片,替換掉RPG MAKER原來這張圖片。

再用RPG MAKER察看剛才的地圖,變成了這樣

從中可以看出,RPG MAKER果然是用16*16的小塊來進(jìn)行分割和拼接。
2- 實(shí)現(xiàn)方法
決定一個(gè)32*32的圖塊由哪4個(gè)16*16的小圖塊拼接的關(guān)鍵,是這個(gè)圖塊的周圍的同類塊的位置和數(shù)量。下面介紹一個(gè)拼接調(diào)色板的方法。
步驟1- 把圖塊周圍的鄰接塊位置編號,如下圖

圖中標(biāo)記了8個(gè)BIT,每個(gè)BIT表示這個(gè)位置上是否有同類塊,有就是1,沒有就是0。這樣,我們就得到了一個(gè)0-255的索引。
步驟2- 建立圖塊拼接調(diào)色板
我們針對這個(gè)索引,建立一個(gè)256元素的表。
在這個(gè)256元素的表里面,把每個(gè)索引對應(yīng)的目標(biāo)塊的樣子描述一下。
描述一個(gè)目標(biāo)塊,需要4個(gè)16*16的小塊。而表示這個(gè)小塊,可以使用他們在AUTOTILE圖片中的索引。
做完這一步,我們得到了256個(gè)4元組。
因?yàn)锳UTOTILE的圖片規(guī)格都是一樣的,所以,這個(gè)調(diào)色板可以用在每一種自動拼接的磚塊上。
這兩個(gè)簡單的步驟結(jié)束后,我們就能夠正確的繪制每一個(gè)自動拼接的圖塊了。因?yàn)樗饕臄?shù)據(jù)是拼接方法,所以叫它是拼接調(diào)色板。