遊戲開發工具淺談

 


業界標準的遊戲製作團隊包括設計師(策劃)、藝術家(美術)、架構師(程序)三部分,同時也要加上QC(測試)小組以保證迭代開發中的快速驗證、除bug與模塊穩健度。那麼這次就主要介紹各個工作崗位的開發人員需要使用和建議使用的各種開發工具。
————————————————————

先 從程序說起。程序員需要使用的工具,依據遊戲平臺的不同、開發端的不同有着不同的區分。但是一般都離不開C++,因此必備的開發工具就是Visual Studio。以前PC平臺上多用C開發,現在基本已經全部採用C++,但考慮到運行效率,有些網絡遊戲的服務器端開發仍然使用C。但是完全依靠人工寫代 碼不但低效、勞累而且容易出錯。因此出現了許多中間件(MiddleWare)開發套件,這些是封裝好的圖形、物理、粒子、AI、網絡、聲音、UI模塊, 內部嵌入了各種遊戲中使用的函數。程序員只需要寫好接口、加入針對性的運算函數便可以把這些部分的工作量減少很多了。而比較大型的中間件可能包含了這其中 的許多模塊,這便是遊戲引擎(Game Engine)。遊戲引擎有很多種,有綜合性的,比如unreal tournament、quake 3D、LithTech、jupiter等等。也有專注性的,最主要專注於兩個方面——圖形和物理。比如專注圖形的ogre和專注物理的havok、 ode,現在由於網絡遊戲開發比較熱,引擎的網絡部分也得到重視,一般採用C/S方式,也有P2P的方式,有些引擎會提供強大的分佈式運算和ado技術。 但也有一些引擎沒有網絡部分,一是由於調用數據的不確定,二是網絡端會有專門的優化,許多程序員會寫專門的算法處理這一部分。圖形用戶界面(GUI)有的 爲團隊自己寫,因爲各種遊戲界面需求不太一樣。有的用引擎或第三方提供的GUI包寫的。有很多……比較著名的是GTK+、wxWidgets、Qt

美 術方面,二維的標準開發工具是painter和photoshop,三維的標準開發工具是3D max和maya。二維不用多說,基本多少年都沒什麼變化。輸出的標準格式早期是pcx、bmp,現在最常用的是tga、dds,tga是標準工業格式, 已被業內大多數企業所接受很久。dds是爲對應directX節省緩存的一種壓縮格式,本身也有很多種格式,效果沒有無損壓縮圖像那麼好,但對於提高顯示 效率和節省遊戲容量效果很好(圖形是遊戲中最佔容量的部分)。png也是很好用的一種格式,正被逐漸接受。jpeg很少被使用,一是因爲圖像有損壓縮,二 是不支持alpha通道,無法實現一些特定效果。三維最早是max和lightwave,但maya的崛起使得其也逐漸成爲遊戲開發的標準工具。現在不少 製作團隊都開始轉向maya,lightwave在歐美開發團隊使用的比較少,日本的開發團隊則非常喜歡lightwave。除此之外,由於CG產業的迅 猛發展以及開發要求的提高,許多新型的優秀三維工具也進入遊戲開發領域。比如softimage、motion builder等,它們在動畫製作方面有着強大的功能。三維輸出的主要格式是max(流行)和obj。遊戲中各種絢麗的效果是用粒子實現的,這也是美術工 作的一部分。一般沒有什麼標準的工具,只要美術製作出粒子最基礎的紋理材質圖片(很小的二維圖形,常用png格式),再導入到程序中計算路徑、發射角、密 度、生命週期、着色、受力等。也出現了一些獨立的專門製作粒子特效的工具,二維遊戲裏面最常用的是particle illusion(它本來是用於影視粒子特效製作的)。三維的有很多,比如particle accelerator、particle editor等等。

策劃方面的標準和使用的工具都很雜。由於策劃是內容的開發者,所以首先要解決文字和數據的問題。MS  word和 excel是不可少的工具。雖然策劃不是美術和程序,但是圖像表達和邏輯表達也是策劃應該儘量作到的。二維圖像表達你至少要會使用word自帶的繪圖功 能,但仍然建議掌握一些基礎的平面繪圖工具,比如photoshop、fireworks等等,如果你能用動畫表示更好,比如flash、gif等;三維 建議瞭解max、maya,我推薦使用輕型快速的三維工具進行表達,比如silo、sketchup等。它們都可以輸出爲obj格式,方便導入到max中 (多用於查看,因爲模型會有一定程度的破損,部分需要重新制作),也可以使用截圖軟件截屏然後製作二維示意圖。策劃的工作還涉及腳本()創作,比如遊戲的 部分AI、任務邏輯、物品(誕生、消失)控制、運算(hp減血、攻擊數值)數據、物理碰撞鎖死編輯、觸發器等。這些方面的主要文件格式爲ini、xml, 還有直接封包爲bin、pak以及程序自己開發的各種存儲格式。不少遊戲使用python、lua等通用的腳本語言進行解釋,它們可以很方便的嵌入到宿主 程序中,加快了調試效率。多數遊戲引擎也會提供強大的腳本編譯器。

其實策劃擁有強大的編輯器就可以把上面這些全省了……不過需要程序先把 框架搭好,美術先把資源做好,策劃纔可以拼接設計,這已經耗費了很多時間了。所以能保證製作之前完成規劃性的設計是很重要的。策劃還需要要考慮可用性、復 用性、邏輯鎖死以及提出的資源需求(包括質量、數量)對效率的影響。比如哪些美術資源是可以重複使用的,圖像質量要求要達到什麼程度(過高的要求會大大降 低程序渲染效率,也會增加整個團隊的工作量),數值變化的臨界點以及控制機制。當然這些就是具體的工作內容了,這裏不再詳述。

音樂音效部 分有專門的創作團隊製作,多數遊戲製作商爲外包。但也有許多不太注重品質的製作商直接就讓策劃做了(無敵的音效庫……)。標準的創作方法是,首先需要在錄 音室創作音源,用音頻採集卡錄製cd品質,在專業工具中進行編輯,包括採樣、濾波、除噪、編輯通道、混音、剪輯和合成,最後輸出爲wav或ogg格式。 ogg格式壓縮率更高,品質也很好(強於mp3),比起wav格式更省體積;也可以直接創作數字音源,製作midi格式的音樂音效,這就要有更多的專業知 識了。這方面的工具有很多,Cubase是標準的開發工具,也可以使用sound forge、sound editor編輯。

————————————————————
關於遊戲開發的各種文章,相信大家在網絡上能找到許多。
中文的遊戲開發網站有:
http://www.gameres.com
http://www.ogdev.com

英文的有:
http://gamasutra.com/

另外多去一些專門的CG站點、遊戲引擎站點、著名遊戲的愛好者論壇看一看,將會瞭解到最前沿的信息並得到不小的收穫。我這裏介紹得十分有限,希望能對有興趣進入這個領域的朋友提供參考。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章