地圖的製作
概述:
地圖製作在遊戲中的作用非常之大,一個好的地圖編輯器決定著一款遊戲的好壞。目前世面上大部分的電腦遊戲的地圖都是如下格式,每個座標代表人物在遊戲中的座標。
然而,在地圖編輯器中,地圖也是由很多很多的小圖素拼接而成的。由於一張大的地圖會出現很多重複的圖素,那麼我們就將這些圖素提出來,稱為基本圖素。基本圖素的好處是,可以重複使用。這樣我們就可以用比較少的圖片種類反覆拼接成一張大圖。這樣做的好處是1,減少圖片數量和磁碟容量;2,減少顯卡和記憶體的負擔;3加快遊戲速度;4,更合理的利用資源。當然這麼做的缺點也是有的1,反覆利用同樣的圖素,畫面將不好看;2,需要專業人員的大量拼接。
切割工具
按照上面所說的,一張完美的地圖的製作需要用到1,切割工具;2,拼圖工具;3編輯器;4轉換工具(3種工具之間格式的轉換)。
首先我們要從原畫手裡拿到我們需要的原圖,再使用切割工具進行我們需要的切割,原圖的要求是必須是64*64,128*128,256*256的倍數,我們可以
在圖片規格那裡可以選擇我們要切的格式,然後載入所需要切割的圖片,輸出的ANI那裡填好遊戲目錄裡的路徑。TITLE編號是由於會有很多檔案的ani要寫在一個ani裡,所以為防止重複寫入,則開啟需要寫入的ani檔案,查看最後的編號,用此編號加1作為title開始編號。如果是第一次切割則為0。圖片的檔案名稱,需要填寫完整路徑,此路徑為遊戲中的路徑,遮罩檔案的檔案夾名稱一般為Mapobj這個檔案夾裡放置著植物、情境地形等其它靜態物件。動態遮罩檔案的檔案夾名稱為Cartoon一般來說,由多楨的靜態圖片連續播放,形成動態圖片都放在這裡;地圖基本圖素放置的檔案夾名稱為puzzle。這些檔案夾一般放在主目錄的DATA\map目錄下,檔案夾裡的子檔案夾的名稱按照分類命名。Pullze檔案名稱是切割後的圖片索引檔案的目錄,我們可以使用中文,這樣在後面的拼圖中會很方便。圖片編號和位元 是在檔案夾裡圖片自動命名的數字規格。
使用注意事項:在使用中1,確定每次切割的圖片規格都是一樣的;2,在切割之前千萬要再看一遍ANI裡所寫的編號是否正確;3新產生的ani還需經過DaiBuilder.exe進行格式轉換,這樣可以提高地圖編輯器在啟動的過程中對ani的索引速度,實際上,有時候在地圖編輯器中開啟沒有轉換的ani也會出錯。4,檔案夾和圖片的命名一定要一目瞭然,擺放規則。5檔案若不是BMP或者tga檔案則要轉換為此二者格式。
拼圖工具(puzzle.exe)
首先我們要把剛才所切割出來的PUZZLE檔案按照我們的需要拼成模組,再用這些模組和原圖素拼接成一張大的地圖。
在拼接這些模組時1,需要開啟兩個puzzle.exe,一個為“選擇—拾取”模式,另一個則為“編輯—填充”模式。快速鍵Alt+Tab,可以在兩者之間快速切換提高工作效率。2,我們按照示意圖根據大小需要在“編輯—填充”模式的puzzle.exe中建立一張拼圖檔案,設定好高度和寬度,從選擇—拾取”模式的puzzle.exe中拾取圖素,填充到編輯—填充”模式的puzzle.exe中。然後命名儲存。3,儲存的一類檔案最好也用檔案夾區分開來。
拼接大圖的時候,首先要注意1,你要拼多大的地圖,在所有的示意圖中其標名的計算單位都是以屏來計算的,而我們在編輯地圖的過程中必須把它計算為格子數,這樣才能確定建立立的地圖高和寬,在製作新的地圖的之前,我們必須先計算出地圖大小,以便在使用puzzle.exe拼圖工具的時候建立地圖使用。例如我這次做的圖為200屏,考慮到填加整圖,所以設定為15*20屏,這樣高度格子數:15*800/128=94寬度格子數:20*600/128=94。2,拼圖時參考示意圖,但盡量考慮多一些,一些地形地貌的變化要合理。變化圖素的串連要曲折圓滑,切忌方方正正。3,盡量不要在同一屏內反覆使用一種圖素,這樣會造成非常難看的地貌出現。4,拼接時,注意不要產生豎線一類的東西,那是圖素之間沒有串連好的緣故。
地圖編輯器(Architect.exe)
最後我們就要接觸到地圖編輯器了,在使用地圖編輯器之前,我們要做好一些準備第一步,你的ANI寫好了沒。這個問題問得很怪,其實非常重要。你的底圖ani檔案是不會錯的了,但你的遮罩ANI呢。在做遮罩ANI之前,你首先要注意,a所有的遮罩大小不能超過512*512,所以超過512*512的圖都需要切割,b還有遮罩的畫布大小必須是2的冥次方,如果不是,那麼就要到PHOTOSHOP中修改並儲存,c所有的遮罩檔案一律要改成英文和數位混合名稱,並且最好不重複;d遮罩檔案的目錄在\data\mapobj\下分類放置;e記住你的檔案名稱是否當中有空格一類的錯誤;f將CoverAniMaker.exe檔案拷貝到\data\mapobj\內,雙擊開啟後,依次輸入mapscene.ani,0。則開始自動產生ani和ini檔案,將mapscene.ani拷貝到ANI檔案夾後,需要將ANI用DaiBuilder.exe轉換一下。G,將產生的INI裡的按照序號位置粘貼到map.ini中。最後記得把map.ini中CoverAmount處加上新增加遮罩物件的個數。h多禎動態遮罩物件ini的編寫,需要手寫,具體寫法請參照地圖編輯器-入門。I,全部寫好後先不急著開始做,隨便建個地圖看看是否所有的遮罩都能顯示,如果不行就得檢查原因,常見的錯誤有1,檔案名稱重複2,檔案名稱中間有空格3,ANI檔案沒有轉換4,路徑錯誤或無圖片5,map.ini中CoverAmount未重設遮罩物件的個數。
第二步,接下來我們建立一個地圖檔案了,開啟建立地圖,選擇我們剛才做好的整圖,他的尾碼為.puzzle。以後儲存的時候用儲存為tmap檔案,這樣可以進行編輯,還有點要注意的是,建立地圖所用的PUZZLE檔案不要用中文名,否則編輯TMAP檔案後會不識底圖的。
第三步打掩碼。在給地圖添加掩碼的時候先點初始化掩碼,再把地圖的四周打上掩碼,規則是:上3行,下兩行,左右各一行,這裡所指的行都是按照完整的掩碼格子計算。小範圍的填加掩碼只要按住CTRL鍵拖動滑鼠即可,大範圍的添加掩碼則可以用右鍵拖動。清除掩碼也是如此。在機戰地圖中,掩碼要多打一些,原因是機戰中的人物和怪物都是機器人,體形龐大,掩碼打的少則會卡在地圖中,還有的是會造成穿邦現象。
第四步打遮罩。遮罩在地圖中的作用不可小看,所以在打遮罩的時候要注意一些建築的遮罩要反覆設定重心的座標,直到和底圖重合的時候不會模糊才可以,當你選好座標加上遮罩的時候,記得在遮罩描邊上用滑鼠掃一下,如果畫面無晃動則表示座標準確,反之則還可以再繼續調整。一些樹的遮罩要記得注意附近的地形,沙漠地區和沙灘附近的植物是不同的。
第五步打地形。地形有個技巧,先根據本圖的特點和地形把一些比較少的地形特點先打上,然後再修改TMAP裡的檔案,修改成相應的地形碼即可,然後再反覆的修改直到滿意。在打地形的時候有時候會遇到編輯器裡還沒有的地形,則需要在Terrian.ini裡填加,格式按照其他已有的地形格式,加好後千萬別忘記在最上面的[檔案頭資訊]地形數量寫對啊。
第六步高度設定。在遊戲中有些人可以走到,但明顯有高低變化的地方需要打上高度,這樣在人行走的時候會後仰,前傾,體現地圖的真實性,而在一些人不可能達到的地方,列如河對岸和高山,懸崖則需要打上比較高的高,具體高度看遊戲設定,因為在有的遊戲中是可以跳的。
第七步檢查修改。當你把上面的步驟都完成的時候,一張完整的地圖就做完了,但是我們還需要再仔細的檢查修改一下。我們放大地圖看一下,是否有遺漏,在底圖上是否還有豎線一類的條紋。是否部分地方圖素是一樣的,是否部分區區掩碼遮罩等沒打,遮罩是否合理。然後我們在縮小再檢查,看是否有掩碼漏打的地方,遮罩布局是否合理,整個地圖的感覺如何。做細微的調整。
第八步整填加切屏點,儲存地圖為TMAP和DMAP格式,完成。
名詞解釋:
1,ANI檔案
它是一種記錄序列的檔案,這樣的檔案將有表頭一段語句表達記錄類型和數量,本文是編號和該編號代表的路徑。被一個情境的所有圖素拼接序列,人物的動作序列都可以用來表示,載入地圖或者載入一段人物的動作的時候,只需要讀取相應ANI即可。
2,INI檔案
設定檔,往往記錄的是一些最基礎的配置,列如一個怪物的設定檔中會記錄該怪物的頭像,聲音,模型,貼圖,移動速度等(有些即時制遊戲或3D遊戲會記錄在資料庫中)。也用於軟體的設定檔。
3,PUZZL
這是圖素拼接的工具,列如美術出10個格子,將這10個格子畫在一個圖中,每個格子有64*64大小,那麼我們按照64*64大小分割會得到10個64*64的小圖片。這些小圖片存在用戶端中,每個都有編號,然後,我們利用這10個格子來拼地圖。地圖是有座標的,那麼則可以記錄座標組應的小圖片(圖素),這樣。一張地圖出來的時候,有多少個座標就對應了多少小圖片,用戶端就可以按照這個把圖片顯示出來。
4,屏
這個是2D遊戲中表示大小的單位。一屏有800*600象素大小。
5,mapobj
物件和遮罩的檔案夾。
6,TMAP和DMAP
每個公司都不一樣的稱呼,其實就是編輯器認識的檔案和用戶端認識的檔案。記錄了這個情境所擁有的座標,座標組應的ANI(圖素路徑);座標組應的遮罩,掩碼等。
7,座標系。
座標系有很多,美術座標是按照象素劃分,每個象素是一個座標。程式座標是按照世界大小劃分,每個情境都有一個唯一座標。地圖編輯器還會用到圖素座標,即時按照圖素劃分的座標,例如基礎圖素大小為64*64,那麼就是說64*64象素就是一個座標,用這個座標來對應圖片。
策劃也用到一個座標是一步就是一個座標,或者說圖中的那個小格子,每個小格子都有自己的屬性,高低,掩碼,水陸屬性等。