unity 第一人稱射擊游戲(推薦)_第1頁
unity 第一人稱射擊游戲(推薦)_第2頁
unity 第一人稱射擊游戲(推薦)_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第一部分:簡介這個(gè)教程中,我們?cè)敿?xì)了解下如何制作一個(gè)簡單的第一人稱射擊游戲(FPS)。其中將介紹一些基本的3D游戲編程的概念和一些關(guān)于怎樣如游戲程序員般思考的技巧。前提這個(gè)教程假定你已經(jīng)熟悉軟件Unity基本操作,掌握了基本的腳本概念。創(chuàng)建新工程下載FPS_Tutorial.zip壓縮文件,解壓,在Unity中打開工程文件。從Unity安裝目錄導(dǎo)入StandardAssets資源包。導(dǎo)入工程后,你會(huì)在Unity工程面板中的“StandardAssets”文件夾下看見這些資源內(nèi)容。當(dāng)我們導(dǎo)入新資源時(shí),最好安裝按照資源功能對(duì)其分組,例如:火箭、爆炸、音頻等。設(shè)置游戲環(huán)境導(dǎo)入資源后,你會(huì)注意到在工程面板中有許多文件夾。工程面板中,從文件夾“Object/mainLevelMesh”中選擇“mainLevelMesh”。在參數(shù)面板,F(xiàn)BXImporter選項(xiàng)中,你會(huì)發(fā)現(xiàn)“GenerateColliders”選項(xiàng),勾選此選項(xiàng)。如果不做這一步,游戲中玩家會(huì)穿越地面直接掉下深淵(實(shí)際是開啟“碰撞”,產(chǎn)生交互)把“mainLevelMesh”拖放到場景中。場景中不需要添加燈光,這關(guān)全部場景已經(jīng)全部應(yīng)用了燈光貼圖。整個(gè)場景對(duì)所有燈光進(jìn)行了燈光貼圖渲染,使用了“預(yù)烘焙陰影”。燈光貼圖對(duì)顯示效果有很大幫助,特別是復(fù)雜燈光環(huán)境。下面可以在場景中添加一個(gè)角色了。添加主要角色下面在場景中增加一個(gè)可以操控的角色物體。Unity針對(duì)第一人稱射擊游戲預(yù)置了許多內(nèi)置的控制器,在工程面板StandardAssets->Prefabs下。添加第一人稱控制器,點(diǎn)擊工程面板StandardAssets旁邊的小三角,彈出資源列表。找到Prefabs文件夾,點(diǎn)擊小三角形,彈出資源列表。把“Firstpersoncontroller”拖到場景里。這時(shí)場景中會(huì)出現(xiàn)一個(gè)代表玩家的圓柱體,三個(gè)大箭頭代表物體在3D空間中的位置(如果沒有看見箭頭,選擇物體,按“W”鍵),白色面代表物體當(dāng)前視角?,F(xiàn)在FPS控制器處于默認(rèn)視角位置,通過移動(dòng)它可以改變游戲視野。把角色移動(dòng)到游戲環(huán)境關(guān)卡地面上面的位置。MainCamera現(xiàn)在已經(jīng)沒有用處了,可以刪掉了。點(diǎn)擊“Play”鍵,現(xiàn)在應(yīng)該可以通過使用鼠標(biāo)和鍵盤在本關(guān)卡地形中四處移動(dòng)了(光標(biāo)或者“W,A,S,D”)現(xiàn)在我們創(chuàng)建了一個(gè)非常簡單的FSP,下面我們給角色添加武器。增加武器下面我們將給游戲角色一個(gè)類似榴彈的物體,可以在游戲中發(fā)射。要實(shí)現(xiàn)這個(gè)功能,需要?jiǎng)?chuàng)建一些腳本語言來在Unity中告知這個(gè)武器如何動(dòng)作。那么我們具體要實(shí)現(xiàn)什么呢?我們要使游戲角色能在攝像機(jī)的任意位置開火。但是,我們還是首先來思考一下游戲角色和武器。游戲角色游戲中是第一人稱的視角,所以攝像機(jī)的位置與眼睛平行。如果玩家使用武器射擊,武器應(yīng)該是在角色的手部位置開火而不是眼睛的位置。這樣我們就要增加一個(gè)“gameobject”(游戲物體)來代表榴彈發(fā)射器,同時(shí)把它放置在游戲角色手持武器時(shí)武器所處的位置。這樣就保證了開火的位置沒有問題。創(chuàng)建武器發(fā)射器首先,創(chuàng)建一個(gè)“gameobject”代表榴彈發(fā)射器。游戲物體是3D世界中的任一物體(角色、關(guān)卡、聲音),零件就是游戲物體的屬性。因此我們還需要對(duì)游戲物體添加零件:從主菜單欄選擇GameObject>GreatEmpty,并在層級(jí)面板中(Hierarchy)命名為“Launcher”。注意,空物體在場景中是看不見的,只是用它來作放置飛彈發(fā)射器?,F(xiàn)在在場景中把視野推近到FPS控制器,便于我們放置武器發(fā)射器。層級(jí)面板中選擇FPS控制器,確保鼠標(biāo)處于場景視圖中,按“F”鍵。使窗口以當(dāng)前選擇的物體為中心。層級(jí)面板中選擇發(fā)射器,主菜單欄選擇GameObject>Movetoview。注意發(fā)射器如何移動(dòng)到FPS控制器附近的。然后使用手柄,把發(fā)射器移動(dòng)到大概角色手部的位置。注意:可以通過設(shè)置這個(gè)物體的位置來設(shè)定游戲角色是左撇子還是右撇子,不需要寫代碼。使Unity窗口模式是“2by3”模式(window>Layouts>2by3),點(diǎn)擊播放鍵(play)。確保層級(jí)面板中點(diǎn)選了發(fā)射器,四處移動(dòng)角色,同時(shí)觀察場景窗口。你將發(fā)現(xiàn)發(fā)射器并沒有隨著角色一起運(yùn)動(dòng)(現(xiàn)在再次點(diǎn)擊播放鍵停止運(yùn)行游戲)下面來解決這個(gè)問題,層級(jí)面板中,把發(fā)射器拖放到FPS控制器下面的主攝像機(jī)上。彈出的對(duì)話框點(diǎn)擊“是”。再次運(yùn)行游戲,觀察場景窗口,發(fā)射器已經(jīng)和角色運(yùn)動(dòng)一致了。這樣我們就把發(fā)射器與攝像機(jī)關(guān)聯(lián)起來了。創(chuàng)建飛彈下面我們來創(chuàng)建在玩家點(diǎn)擊開火鍵時(shí)能夠發(fā)射出來的飛彈。我們先用一個(gè)簡單物體-球體-代替飛彈。Unity主菜單欄點(diǎn)擊Assets>Creat>Prefab創(chuàng)建一個(gè)預(yù)制(Prefab)物體,命名為“Missile”創(chuàng)建一個(gè)球體(GameObject>CreateObject>Sphere)層級(jí)面板中,拖放球體到飛彈預(yù)制物體上(Missile),這時(shí)預(yù)制物體圖標(biāo)會(huì)變化。你可以從層級(jí)面板中刪除球體。技巧:游戲運(yùn)行中產(chǎn)生的任何游戲物體都應(yīng)該是預(yù)制物體(Prefab)。編寫飛彈發(fā)射器腳本FPS控制器是一個(gè)包含了幾個(gè)游戲物體和部件的預(yù)制物體。FPS控制器本身是一個(gè)只能沿Y軸旋轉(zhuǎn)的圓柱體,因此,如果我們直接把發(fā)射器腳本賦予FPS控制器的話,是實(shí)現(xiàn)不了上下開火的。所以我們把腳本賦予控制器中的能夠四周轉(zhuǎn)動(dòng)的主攝像機(jī)。下面我們來編寫第一個(gè)描述發(fā)射器行為的JavaScript代碼。點(diǎn)擊Assets>Greate>JavaScript,創(chuàng)建一個(gè)空的JavaScript文檔。一個(gè)名為“NewBehaviourScript”資源將會(huì)出現(xiàn)在工程面板中,把它更名為“MissileLauncher”技巧:通過Unity>Preferences點(diǎn)擊ExternalScriptEditor,可以自定義外部腳本編輯器。工程面板中創(chuàng)建一個(gè)“WeaponScripts”文件夾,放置我們所有的武器腳本。把MissileLauncher腳本和飛彈預(yù)制物體(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論