包含36節(jié)視頻教程
關(guān)注28.8萬次
(本教程houdini技術(shù)已老請購買之后houdini更新課程)Houdini是一款功能強(qiáng)大的3D合成軟件,曾經(jīng)效力于300部以上經(jīng)典電影的特效制作,比如煙火,水等復(fù)雜的后期合成都少不了它。
朱峰社區(qū)評論:這節(jié)課主要是介紹一下UDK的技術(shù),是很基礎(chǔ)的一節(jié)課,也很重要。從歷史到構(gòu)成又到培訓(xùn)資源,介紹很詳細(xì)的。
下面簡單介紹Unreal Engine大事記,正是這些關(guān)鍵事件引領(lǐng)我們到達(dá)今日的地位。 至今,Unreal Engine已有10年左右的歷史了。它始終如一地向人們提供各種各樣獨特的游戲制作體驗。 1998年6月
《Unreal》
1998年夏季《Unreal》發(fā)售伊始便即熱賣。該游戲情節(jié)引人入勝、圖像令人驚嘆、環(huán)境賞心悅目。與當(dāng)時的其它3D游戲相比,其外景更是在當(dāng)時的3D游戲中卓爾不群。這款單機(jī)游戲極富誘人體驗,同時也具備獨特的多人元素:玩家可以擁有協(xié)同作戰(zhàn)的人工職能‘bots’,或是由電腦控制的敵對玩家。
隨著《Unreal》的發(fā)展,Unreal Engine誕生了。該游戲引擎同時也為mod制作者(修改現(xiàn)有游戲的人)使用UnrealScripts增強(qiáng)與修改他們的游戲體驗鋪平了道路。 該引擎采用了模塊化設(shè)計,于是,Epic Games及其它的授權(quán)公司可以容易地修改并自定義引擎的各個方面,而不必重寫一個新的引擎。 1999年11月
Unreal競技場
《Unreal競技場》由所擁有的難以置信的網(wǎng)絡(luò)對戰(zhàn),以及一些最為先進(jìn)bot AI不斷的被運用入此游戲當(dāng)中,這些亮點使得玩家們嘆為觀止。最初作為初代《Unreal》擴(kuò)展包的《Unreal競技場》大大擴(kuò)展了多人游戲功能。該游戲也被移植到了PlayStation 2和Sega Dreamcast平臺!禪nreal競技場》將以往的單純“死亡競賽”模式轉(zhuǎn)變成一系列頗具觀賞性的競技游戲模式。該游戲還向下兼容初代《Unreal》中的原始地圖。
Unreal開發(fā)者網(wǎng)絡(luò)發(fā)布
時至今日,該網(wǎng)站仍是獲得Unreal Engine及其開發(fā)信息的最權(quán)威資源。Unreal開發(fā)者網(wǎng)絡(luò)(Unreal Developer Network,通常稱“UDN”)提供了一個中心場所,供Unreal Engine的用戶(從授權(quán)用戶到mod制作者)獲得與引擎相關(guān)文檔資料和諸多游戲創(chuàng)作方面的指南。Unreal開發(fā)者網(wǎng)絡(luò)可通過udn.epicgames.com進(jìn)入。
《Unreal錦標(biāo)賽》和《Unreal競技場2003》
在《Unreal錦標(biāo)賽》攜《Unreal競技場》的特有技術(shù)植入微軟Xbox游戲平臺后,緊隨而來的是PC平臺上《Unreal競技場2003》的發(fā)售。這兩款游戲都很注重多人模式,《Unreal錦標(biāo)賽》還成為了第一批使用微軟Xbox Live!寬帶在線系統(tǒng)的游戲。
《Unreal競技場2003》引領(lǐng)了一個新時代,使得游戲開發(fā)和mod改造異常靈活有力。Unreal競技場2003具備強(qiáng)大的粒子系統(tǒng)、地形生成系統(tǒng)和Karma物理引擎。它同時包含了制作游戲中過場片斷和動畫的集成系統(tǒng)——Matinee系統(tǒng)。它同時整合了靜態(tài)網(wǎng)格功能,實現(xiàn)了用顯卡繪制多邊形網(wǎng)格的多個實例。這提供了一種方法使用相對較低的計算開銷來繪制一個高細(xì)節(jié)度關(guān)卡,并能獲得較高的幀數(shù)。
《Unreal II》
《UnrealII:覺醒》的發(fā)布使得PC單機(jī)游戲的世界復(fù)蘇了,而在過去的數(shù)年間,PC游戲制作都嚴(yán)重傾向于多人玩家模式!禪nrealII》又回到了初代《Unreal》故事線索,再次使玩家陷入對抗殘忍的Skaarj勢力的挑戰(zhàn)中。該游戲也包括了與NPC角色(非玩家控制角色)的大量互動,而這些角色則由電腦控制。自《Unreal競技場2003》以來應(yīng)用的所有技術(shù),將引擎推向了擁有豪華環(huán)境設(shè)定的新水平上。該游戲還運用了Legend Entertainment公司的Golem 動畫系統(tǒng)。
《Unreal競技場2004》
《Unreal競技場》第三版的發(fā)售沖鋒類游戲隨之產(chǎn)生,并且代來了在線多人游戲飛躍。這個游戲模式向玩家提供了一個龐大的戰(zhàn)場,戰(zhàn)場上充斥著可占據(jù)的控制點、前哨、武器以及車輛系統(tǒng),使得玩家們在一個龐大的范圍內(nèi)能夠進(jìn)行全方位的戰(zhàn)爭。這種游戲類型在gameplay上還提供了一個有趣的變化:有些關(guān)卡在外太空進(jìn)行,并強(qiáng)迫玩家必須乘坐太空戰(zhàn)斗機(jī)滲入一個空間站,并在著陸后徒步奪取此空間站!
《Unreal錦標(biāo)賽2:Liandri Conflict》
《Unreal錦標(biāo)賽》的第二代是Xbox游戲平臺上的獨占游戲,采用了Xbox獨有的Unreal Engine2.5特別版。該游戲提供了增強(qiáng)圖形功能,其多人gameplay不管在系統(tǒng)聯(lián)機(jī)或Xbox Live!在線游戲系統(tǒng)的情況下,都是非常穩(wěn)定的。游戲中新加入了混戰(zhàn)元素,這在其它的《Unreal競技場》系列游戲中從未出現(xiàn)。游戲加入了可選的第三人稱視角模式,它給玩家?guī)硪环N嶄新的hardcore游戲動作體驗。
《戰(zhàn)爭機(jī)器》
隨著《戰(zhàn)爭機(jī)器》的發(fā)布,Unreal Engine3進(jìn)入了針對游戲機(jī)平臺開發(fā)游戲的主要階段。盡管《戰(zhàn)爭機(jī)器》不是第一個使用Unreal Engine3的游戲(第一個應(yīng)該是Roboblitz),但《戰(zhàn)爭機(jī)器》卻是第一個展示出Unreal Engine3完美實力的游戲。戰(zhàn)爭機(jī)器具有獨特的第三人稱視角風(fēng)格,豐富多彩與極端細(xì)致的環(huán)境,逼真得令人恐懼的敵人,以及前所未有、令人深思的戰(zhàn)斗;這些特征使《戰(zhàn)爭機(jī)器》迅速熱賣,并成為史上最暢銷的游戲產(chǎn)品之一。
該游戲通過使用法線帖圖技術(shù),使模型看起來由數(shù)百萬個多邊形組成,具有很強(qiáng)的視覺深度。燈光和材質(zhì)都表現(xiàn)得極其完美,營造了極端逼真的光影環(huán)境。該游戲還采用了新的物理引擎—Aegis,整個系統(tǒng)由強(qiáng)大的新型Kismet可視化腳本系統(tǒng)支撐。
本節(jié)將向您簡單(用通俗易懂的語言)介紹Unreal Engine的方方面面。到底什么是Unreal Engine?簡而言之,它就是把一大堆用戶創(chuàng)建的資源整合入一個很炫的可視化交互環(huán)境。然而這只是將Unreal Engine的一切實質(zhì)用途過度簡化所得的結(jié)論。在此,我們不去探討引擎每個方面的細(xì)節(jié),而是面向一般人士(或非程序員)來闡述,以便您了解引擎的工作原理。
Unreal Engine由一系列獨立工作的組件構(gòu)成,它們都通過一個中央核心引擎發(fā)揮作用。因此,各個模塊在相對獨立的同時,也可以協(xié)同工作。這使得這種基于組件的構(gòu)架具有模塊化的特性,因此,引擎技術(shù)的授權(quán)使用者可以輕松定制(甚至替換)任意組件,而不必對核心代碼進(jìn)行大幅改動。本節(jié)將向您介紹引擎的各個組件及其工作原理,帶您進(jìn)入《Unreal》游戲制作的神奇體驗。
Unreal腳本是Unreal Engine最具有革命性的元素之一。它是一種語法與C++十分酷似的腳本語言。通過Unreal腳本,理論上用戶可以對引擎組件的任何部分作修改,而不必觸及游戲的源代碼。Unreal腳本編譯器作為引擎的一個組件,負(fù)責(zé)獲取用戶制作的Unreal腳本,并將它們翻譯成引擎可以處理的代碼。
不得不說的是,本書不會深入討論如何編寫Unreal腳本,而是從美工層面上來探討如何創(chuàng)建游戲資源。
現(xiàn)在您了解了Unreal Engine的基本組件。我們再來看看這些組件是如何協(xié)同工作,使您產(chǎn)生真實的游戲體驗。
大部分的游戲都是由一個游戲循環(huán)驅(qū)動的。游戲循環(huán)是游戲程序代碼的一部分,它不斷地自我重復(fù),檢測玩家的更新,從而對游戲的各個方面進(jìn)行更新。在此循環(huán)中,還對一系列單個的檢測項進(jìn)行計算,以準(zhǔn)確判斷在游戲環(huán)境中發(fā)生何種類型的變化。例如,玩家移動、開槍、受傷,以及敵人如何移動等等。游戲循環(huán)還執(zhí)行其它一些普通任務(wù),例如:將圖形引擎加入序列用來重繪屏幕,驅(qū)動聲音引擎播放聲音,甚至在網(wǎng)絡(luò)系統(tǒng)間傳送數(shù)據(jù)。一般來說,游戲循環(huán)通常是線性設(shè)計的,也就是說,每次循環(huán)都會按照相同的順序執(zhí)行此類檢查,每次檢查都具有相同的優(yōu)先級。
Unreal Engine也同樣使用了游戲循環(huán),但它是一個事件驅(qū)動系統(tǒng)。也就是說,引擎包含了一張事件列表,上面包含所有被用到的引擎組件。這些事件由各種不同的來源引發(fā),例如,玩家輸入,來自物理系統(tǒng)的數(shù)據(jù),或組件之間嘗試相互通信。通過系統(tǒng)的所有事件都列在這張事件列表上。
這種系統(tǒng)的優(yōu)點在于,每一事件都具有特定的優(yōu)先級。這樣,事件是根據(jù)其重要程度被處理的,而不是在每個游戲周期內(nèi)以特定序列更新游戲的每一個方面。
舉例來說,試想當(dāng)玩家在游戲中使用武器射擊時的情形。此動作剛完成,一系列不同類型的事件就已加入到了隊列中,而隊列中可能早已經(jīng)存在其它事件。射擊事件包括發(fā)射彈體和播放聲音。顯然,前者更為重要,因為它決定了游戲進(jìn)行,例如,發(fā)射之后是否命中一個敵人或是引起其它動態(tài)物體的物理反應(yīng)。因此,Unreal Engine分配給發(fā)射彈體以更高的優(yōu)先級,要求播放槍炮聲之前就要完成這個動作。由此可見,關(guān)鍵在于處理好事件發(fā)生的輕重緩急,將重要事件先于非重要事件前處理。
既然您已經(jīng)知道了Unreal Engine是事件驅(qū)動的性質(zhì),我們再來看看在游戲運行中,引擎組件是如何協(xié)同工作的。啟動基于Unreal Engine設(shè)計的游戲后,第一件事就是初始化每個引擎組件。這和您啟動跑車后讓其熱身很類似。跑車本身并不會做任何特殊的動作,而是處于閑置狀態(tài),但卻為您的下一步動作做準(zhǔn)備。例如,換檔,踩油門,轉(zhuǎn)動方向盤等等。對于Unreal Engine來說,就是發(fā)生于啟動游戲到顯示標(biāo)題屏幕的很短的加載時間。
這時,各種引擎組件已開始相互傳遞信息。啟動時,引擎內(nèi)核對圖形引擎、聲音引擎、物理引擎和Unreal腳本編譯器進(jìn)行初始化。與此同時,核心引擎開始向各個組件發(fā)送命令。有一些組件(如物理引擎),也開始向核心引擎回送數(shù)據(jù),以保持系統(tǒng)內(nèi)部同步化。所有的組件完成了初始化后,顯示用戶界面,繼而游戲引擎等待用戶的輸入。
游戲一旦啟動,便開始加載某個關(guān)卡,其中包含了各項游戲資源。這些資源包括貼圖和材質(zhì)、聲音、靜態(tài)網(wǎng)格物體、骨架網(wǎng)格物體和動畫、腳本等。每項資源都由特定引擎組件傳送,例如,材質(zhì)由圖形引擎進(jìn)行處理,而剛體則由物理引擎進(jìn)行計算,等等。
這時,事件序列已被激活。核心引擎中迅速排滿了各類事件,再經(jīng)處理后,就成為我們的游戲體驗。下面以《Unreal競技場III》為例,簡短列出了這一流程,以通俗的語言說明了在運行類似《Unreal競技場III》的游戲時,此流程的工作方式。
1. 游戲初始化(啟動《Unreal競技場III》)
a. 核心引擎對引擎各組件實行初始化。
b. 各組件開始向核心引擎回送數(shù)據(jù),以進(jìn)行同步。
c. 游戲進(jìn)入預(yù)備狀態(tài),等待用戶輸入。
2. 游戲開始(選擇并啟動關(guān)卡)
a. 加載地圖,地圖中包含了所有資源及對應(yīng)屬性。
b. 將每項資源信息發(fā)送到相應(yīng)的引擎組件中(聲效發(fā)送至聲音引擎,材質(zhì)發(fā)送至圖形引擎)。
3. 游戲運行(大量使用高射炮、脈沖槍和其它武器)
a. 各引擎組件向核心引擎發(fā)送信息,由核心引擎對事件進(jìn)行優(yōu)先級排序,形成事件序列。
b. Unreal Engine的游戲循環(huán)不間斷運行,并根據(jù)事件優(yōu)先級對每個事件進(jìn)行評估,率先執(zhí)行優(yōu)先級最高的任務(wù)。
出于方便的考慮,地圖中包含自有文件包。此文件包完全包含于此關(guān)卡中。如果這些資源只存在于某個關(guān)卡,那就很方便了。但是在大多數(shù)情況下,您將資源存放在其它的文件包中,而不是此關(guān)卡文件包中。其原因之一,是因為當(dāng)其它關(guān)卡也需要這些資源時,不能從此地圖文件包中讀取。同樣,請牢記,文件包中與當(dāng)前關(guān)卡無關(guān)的資源,在保存關(guān)卡時,將從關(guān)卡文件包中剔除掉。例如,如果您的關(guān)卡文件包中有磚墻的紋理,但沒有應(yīng)用到當(dāng)前關(guān)卡的任何材質(zhì)上。當(dāng)您下次保存這個關(guān)卡時,磚墻貼圖將在關(guān)卡文件包中被刪除。
貼圖是一種簡單的2D圖像,用于在關(guān)卡中或其它游戲資源中創(chuàng)建材質(zhì),F(xiàn)在,我們不去太深入地探討這個問題,后面會有整個章節(jié)專門討論材質(zhì)的生成。在此,這樣解釋就足夠了:在你的關(guān)卡中,所有可見的表面都應(yīng)用了材質(zhì),而每一材質(zhì)包含了至少一張貼圖。因此,可以將貼圖看作材質(zhì)的一部分。簡而言之,貼圖就是提供色彩(通常還有其它信息)的2D圖像,而材質(zhì)則說明了光照在表面產(chǎn)生的效果。當(dāng)然,個中道理不僅如此,姑且先這樣介紹吧。
貼圖通常被稱為“maps”(例如,常見術(shù)語 高光貼圖 和 漫反射貼圖 ), 但為了防止混淆,我們?nèi)苑Q它們?yōu)橘N圖。一些貼圖,如法線貼圖,使物體表面形成了遠(yuǎn)多于多邊形數(shù)目所允許的物理細(xì)節(jié)的錯覺。貼圖用于向材質(zhì)提供一些特殊說明,包括但不僅限于色彩。通過使用法線貼圖,由幾千個多邊形組成的模型看起來竟然像是由數(shù)百萬個多邊形組成的!
和其它的游戲資源一樣,貼圖也是存儲在文件包中。它們不是由Unreal Engine的主要編輯器——Unreal編輯器(UnrealEd)創(chuàng)建的,而是由其它外部應(yīng)用軟件創(chuàng)建的。貼圖通常是由諸如Photoshop、ZBrush或Painter創(chuàng)建的,也可以通過數(shù)碼相機(jī)、掃描物體或照片得到。
材質(zhì)是在UnrealEd中利用外部軟件產(chǎn)生的貼圖創(chuàng)建的。單種材質(zhì)可以使用多種不同的貼圖(但是使用過多貼圖,會耗費寶貴的系統(tǒng)資源)。這些材質(zhì)也是保存在文件包中,可以應(yīng)用于地圖中的平面。請記住,在Unreal Engine3中,不能直接將貼圖應(yīng)用于表面;只能將材質(zhì)應(yīng)用于表面,而材質(zhì)中可以包含所需要的貼圖。在“材質(zhì)”一章中會詳細(xì)討論。
既然Unreal Engine是一個3D游戲引擎,您當(dāng)然會在一些地方用到三維資源,例如,角色或其它骨架網(wǎng)格物體,以及靜態(tài)網(wǎng)格物體。當(dāng)今市場上有大量的3D軟件完全可以創(chuàng)造出Unreal Engine3所需要的內(nèi)容。其中有兩個關(guān)鍵性軟件是最常用的:3ds Max和Maya。它們都是由Autodesk公司開發(fā)并發(fā)售的產(chǎn)品。您可以在下面的網(wǎng)頁上找到關(guān)于這些軟件更多的信息,或下載試用版本:m.10000bestjobs.com
要制作游戲中的材質(zhì)所需要的貼圖,您需要一些專門的貼圖制作軟件。常用的軟件包括Adobe Photoshop或Corel Painter。它們都提供了一些功能,可以利用照片或現(xiàn)有貼圖,也可以自行繪制。
還有其它的一些軟件,有的軟件允許直接在模型表面進(jìn)行繪制,例如Pixologic公司的ZBrush。這是很強(qiáng)大的一款軟件,不僅允許創(chuàng)建貼圖,甚至可以建立包含上百萬多邊形的網(wǎng)格,用于生成網(wǎng)格所需的高精度法線貼圖!
現(xiàn)今,用戶可以選擇如此眾多的3D制作程序,但Unreal Engine3只能識別一種格式以進(jìn)行信息傳輸,如何使用戶免去在不同軟件間轉(zhuǎn)換格式的繁瑣又能自由選擇任意一種應(yīng)用程序來制作Unreal游戲的資源?Unreal Engine3支持Collada文件格式,它擁有適用于市面上幾乎所有3D軟件的插件版本。可登錄collada.org獲取更多關(guān)于Collada的信息或下載最新版本的Collada插件。
UnrealEd無法錄制音頻文件,因此您需要其它的軟件來獲取音效,并將它們轉(zhuǎn)換為WAV文件,這樣才能將其導(dǎo)入UnrealEd SoundCue Editor并轉(zhuǎn)換為SoundCue資源。目前有很多軟件都可以幫助您完成這件事。實際上,最簡單的方法就是使用windows自帶的錄音機(jī)軟件也可以將加載的文件轉(zhuǎn)換為WAV格式。
然而,如果您需要更為專業(yè)的環(huán)境來制作音效或音樂,可以考慮使用索尼公司Sound Forge或Adobe Audition來創(chuàng)建自己的音效。無論您選擇哪種軟件,請確認(rèn)可以對聲音波形進(jìn)行編輯,這樣您就可以去掉音效末尾十分細(xì)小的停頓,使各種效果間的混合簡單易行。在UnrealEd的SoundCue編輯器中,您可以編輯音調(diào)和音量。
許多資源創(chuàng)建軟件都需要大量的技巧,并非從一開始就會使用的。因此,很多滿懷信心的游戲設(shè)計師還需要一些培訓(xùn)幫助他們上手。在很多地方都可以找到關(guān)于3D軟件和貼圖制作的培訓(xùn)。例如,3D Buzz.com(設(shè)計師之家)網(wǎng)站中有數(shù)百小時的免費視頻教學(xué)錄像可供下載,也可以購買專業(yè)級的視頻教學(xué)。
3D Buzz小組從事在線3D教學(xué)業(yè)務(wù)已有5年了,它與Epic Games緊密合作,負(fù)責(zé)制作60+小時的教學(xué)視頻。該視頻與《Unreal競技場2004》DVD特別版及該游戲的周年版本同時發(fā)布。
這節(jié)課完成了,UDK的技術(shù)我們就介紹到這。以后我們社區(qū)會有更多的關(guān)于UDK的教程,歡迎學(xué)習(xí)!
朱峰社區(qū)網(wǎng)頁版(手機(jī)掃描-分享-添加到屏幕)
朱峰社區(qū)微信公眾號(微信掃一掃-關(guān)注)
未知用戶
2005-2025 朱峰社區(qū) 版權(quán)所有 遼ICP備2021001865號-1
2005-2025 ZhuFeng Community All Rights Reserved
VIP