版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
模塊一:熟悉游戲物體和組件項(xiàng)目一:初識(shí)UnityUnityGameEngineUNITY01項(xiàng)目1:初識(shí)Unity02項(xiàng)目2:訪問(wèn)游戲物體03項(xiàng)目3:控制游戲物體04項(xiàng)目4:使用游戲物體和組件05項(xiàng)目5:剛體—力的模擬06項(xiàng)目6:碰撞體—物體碰撞檢測(cè)07項(xiàng)目7:角色控制器—控制角色運(yùn)動(dòng)08項(xiàng)目8:物理材質(zhì)與射線—射線技術(shù)應(yīng)用09項(xiàng)目9:關(guān)節(jié)—關(guān)節(jié)模擬動(dòng)畫10項(xiàng)目10:UGUI系統(tǒng)—《迷宮尋寶》游戲界面設(shè)計(jì)11項(xiàng)目11:動(dòng)畫系統(tǒng)—游戲動(dòng)畫制作12項(xiàng)目12:地形引擎—游戲場(chǎng)景制作13項(xiàng)目13:聲光技術(shù)—聲光特效14項(xiàng)目14:粒子系統(tǒng)—粒子特效15項(xiàng)目15:尋路技術(shù)—導(dǎo)航尋路動(dòng)畫16項(xiàng)目16:背包系統(tǒng)—物品拾取動(dòng)畫17項(xiàng)目17:寶石迷宮18項(xiàng)目18:貪吃蛇全套可編輯PPT課件模塊一熟悉游戲物體和組件初識(shí)Unity訪問(wèn)游戲物體控制游戲物體使用游戲物體和組件項(xiàng)目一項(xiàng)目二項(xiàng)目三項(xiàng)目四任務(wù)概述
Unity作為一款專業(yè)游戲開(kāi)發(fā)引擎,如今,已經(jīng)成為全球范圍內(nèi)廣泛使用的開(kāi)發(fā)工具,擁有龐大的社群和豐富的資源庫(kù),大家耳熟能詳?shù)纳駨R逃亡、憤怒的小鳥(niǎo)、王者榮耀等游戲都有Unity的身影,玩家十分廣泛。本項(xiàng)目,我們將共同走進(jìn)Unity的開(kāi)發(fā)世界,并通過(guò)小球跟隨鼠標(biāo)案例體驗(yàn)Unity項(xiàng)目開(kāi)發(fā)的工作流程。行業(yè)PPT模板/hangye/學(xué)習(xí)目標(biāo)011.掌握Unity軟件的安裝知識(shí)2.熟悉Unity編輯器的基本使用方法3.能夠掌握Unity開(kāi)發(fā)的基本操作流程教學(xué)目標(biāo)重難點(diǎn)重點(diǎn):Unity編輯器的基本使用方法難點(diǎn):熟悉Unity項(xiàng)目開(kāi)發(fā)流程項(xiàng)目實(shí)現(xiàn)02任務(wù)1:了解Unity軟件Unity是由UnityTechnologies公司開(kāi)發(fā)的專業(yè)跨平臺(tái)游戲開(kāi)發(fā)及虛擬現(xiàn)實(shí)引擎,以其強(qiáng)大的跨平臺(tái)特性與絢麗的3D渲染效果而廣為人知,可以運(yùn)行在Windows和MacOSX平臺(tái)下,其游戲可以發(fā)布至Windows、Mac、Android、Web、Wii等多個(gè)平臺(tái)。1.Unity簡(jiǎn)介像《神廟逃亡》、《紀(jì)念碑谷》、《王者榮耀》、《爐石傳說(shuō)》等諸多大家所熟知的游戲,都是用Unity引擎開(kāi)發(fā)的.項(xiàng)目實(shí)現(xiàn)02任務(wù)1:了解Unity軟件用瀏覽器登錄Unity官網(wǎng)https://,根據(jù)自己的計(jì)算機(jī)平臺(tái)選擇下載相應(yīng)的版本。2.Unity下載安裝Unity也可以選擇先下載安裝UnityHub,然后選擇從Hub下載。需要提示的是,Unity的安裝過(guò)程需要網(wǎng)絡(luò)的支持,因此在安裝過(guò)程中必須保證電腦能夠隨時(shí)連接網(wǎng)絡(luò)。項(xiàng)目實(shí)現(xiàn)02任務(wù)1:了解Unity軟件Unity為用戶提供了免費(fèi)版和專業(yè)版以供選擇,在學(xué)習(xí)時(shí)可以使用免費(fèi)版,不過(guò)需要先進(jìn)行用戶注冊(cè)。登錄Unity官網(wǎng),單擊右側(cè)的頭像,選擇創(chuàng)建UnityID,在彈出的注冊(cè)界面輸入相應(yīng)的信息,進(jìn)行人機(jī)驗(yàn)證后,即可創(chuàng)建UnityID。注冊(cè)后在注冊(cè)時(shí)登記的郵箱中會(huì)收到一封郵件,需要進(jìn)行認(rèn)證激活。3.注冊(cè)UnityID項(xiàng)目實(shí)現(xiàn)02任務(wù)1:了解Unity軟件(1)打開(kāi)下載的UnityHub,用自己注冊(cè)的UnityID進(jìn)行登錄。4.啟動(dòng)Unity(2)單擊新建按鈕,輸入項(xiàng)目名稱及保存位置,單擊創(chuàng)建按鈕,即可創(chuàng)建一個(gè)Unity項(xiàng)目。項(xiàng)目實(shí)現(xiàn)02任務(wù)1:了解Unity軟件(1)Unity資源商店:https://5.Unity服務(wù)(2)Unity用戶手冊(cè):https:///Manual/index.html項(xiàng)目實(shí)現(xiàn)02任務(wù)1:了解Unity軟件(3)Unity論壇:https://5.Unity服務(wù)項(xiàng)目實(shí)現(xiàn)02任務(wù)2:認(rèn)識(shí)Unity的工作環(huán)境新建Unity項(xiàng)目后,在界面的右上角單擊下拉菜單,選擇“2by3”,即可更改界面布局。1.更改界面布局項(xiàng)目實(shí)現(xiàn)02任務(wù)2:認(rèn)識(shí)Unity的工作環(huán)境2.認(rèn)識(shí)Unity界面Scene場(chǎng)景
編輯場(chǎng)景Game游戲游戲運(yùn)行效果顯示Inspector檢視查看、編輯游戲物體的屬性Hierarchy層級(jí)顯示游戲物體Project項(xiàng)目顯示工程的素材資源項(xiàng)目實(shí)現(xiàn)02任務(wù)2:認(rèn)識(shí)Unity的工作環(huán)境(1)視角切換縮放視角:滾動(dòng)鼠標(biāo)滾輪或按住Alt鍵的同時(shí)移動(dòng)鼠標(biāo)右鍵3.熟悉Unity界面基本操作項(xiàng)目實(shí)現(xiàn)02任務(wù)2:認(rèn)識(shí)Unity的工作環(huán)境(1)視角切換旋轉(zhuǎn)視角:按住Alt鍵的同時(shí)移動(dòng)鼠標(biāo)左鍵3.熟悉Unity界面基本操作項(xiàng)目實(shí)現(xiàn)02任務(wù)2:認(rèn)識(shí)Unity的工作環(huán)境(1)視角切換移動(dòng)視角:按住鼠標(biāo)中鍵直接移動(dòng)鼠標(biāo)進(jìn)行視角的移動(dòng)3.熟悉Unity界面基本操作163項(xiàng)目實(shí)現(xiàn)02任務(wù)2:認(rèn)識(shí)Unity的工作環(huán)境(1)視角切換居中顯示選中物體:選中游戲物體后,按下F鍵,可以將所選擇的游戲物體居中顯示。3.熟悉Unity界面基本操作項(xiàng)目實(shí)現(xiàn)02任務(wù)2:認(rèn)識(shí)Unity的工作環(huán)境(1)視角切換飛行瀏覽模式:按住鼠標(biāo)右鍵,鼠標(biāo)箭頭會(huì)變成眼睛和矩形,此時(shí),可以按下W、A、S、D、Q、E鍵,讓用戶以第一人稱視角漫游場(chǎng)景,按Shift鍵可以加速移動(dòng)。3.熟悉Unity界面基本操作項(xiàng)目實(shí)現(xiàn)02任務(wù)2:認(rèn)識(shí)Unity的工作環(huán)境(2)工具操作ViewTool(手形工具):按住鼠標(biāo)左鍵拖動(dòng)鼠標(biāo)可以進(jìn)行視角的平移,快捷鍵為Q鍵。3.熟悉Unity界面基本操作MoveTool(移動(dòng)工具):可以對(duì)選中的游戲?qū)ο筮M(jìn)行位置的移動(dòng),其中紅色的為X軸,綠色的為Y軸,藍(lán)色的為Z軸,移動(dòng)工具的快捷鍵為W鍵。項(xiàng)目實(shí)現(xiàn)02任務(wù)2:認(rèn)識(shí)Unity的工作環(huán)境(2)工具操作RotateTool(旋轉(zhuǎn)工具):改變選中游戲物體的旋轉(zhuǎn)角度,快捷鍵為E鍵。3.熟悉Unity界面基本操作ScaleTool(縮放工具):改變選中游戲物體的大小,快捷鍵為R鍵。項(xiàng)目實(shí)現(xiàn)02任務(wù)2:認(rèn)識(shí)Unity的工作環(huán)境(2)工具操作RectTool(矩形工具):對(duì)游戲?qū)ο筮M(jìn)行對(duì)應(yīng)方向上的縮放,快捷鍵為T鍵。3.熟悉Unity界面基本操作TransfomrTool(變換工具):是移動(dòng)、旋轉(zhuǎn)和縮放工具的組合,快捷鍵為Y鍵。項(xiàng)目實(shí)現(xiàn)02任務(wù)3:體驗(yàn)Unity的工作流程1.新建Unity項(xiàng)目,調(diào)整窗口布局。2.利用Cube、Plane、Sphere布置如圖所示場(chǎng)景。3.為游戲物體添加材質(zhì)。4.為黃球player添加Rigidbody組件。5.為floor設(shè)置層名稱a。制作步驟提示:項(xiàng)目實(shí)現(xiàn)02任務(wù)3:體驗(yàn)Unity的工作流程6.為紅球添加targetDemo腳本。制作步驟提示:publicclasstargetDemo:MonoBehaviour{publicCameramCamera;//聲明攝像機(jī)
publicLayerMaskcastlayer;//聲明碰撞層
publicGameObjecttarget;//聲明目標(biāo)游戲物體
voidUpdate(){if(Input.GetMouseButtonDown(0))//判斷是否按下鼠標(biāo)左鍵
{Rayray=mCamera.ScreenPointToRay(Input.mousePosition
RaycastHithit;//存儲(chǔ)碰撞信息
if(Physics.Raycast(ray,outhit,Mathf.Infinity,castlayer))
{target.transform.position=hit.point
}}}}項(xiàng)目實(shí)現(xiàn)02任務(wù)3:體驗(yàn)Unity的工作流程7.為黃球添加playerDemo腳本。制作步驟提示:publicclassplayerDemo:MonoBehaviour{publicGameObjectplayer;//聲明player游戲物體
publicGameObjecttarget;//聲明target游戲物體
publicfloatmoveSpeed=1;//設(shè)置移動(dòng)速度
voidUpdate(){Vector3force=target.transform.position-player.transform.position;//移動(dòng)距離
player.GetComponent<Rigidbody>().AddForce(force*moveSpeed);//讓player移動(dòng)
}}項(xiàng)目實(shí)現(xiàn)02任務(wù)3:體驗(yàn)Unity的工作流程8.利用Image和Text制作后面的文字。9.保存場(chǎng)景,發(fā)布、測(cè)試游戲。制作步驟提示:內(nèi)容總結(jié)03123Unity軟件的安裝Unity界面及基本應(yīng)用創(chuàng)建一個(gè)完整的Unity項(xiàng)目HomeWork在自己的機(jī)器上安裝Unity軟件,熟悉軟件的操作界面。路雖遠(yuǎn),行則將至!書雖難,學(xué)則必成!Thoughtheroadislong,thejourneyisnear;Booksaredifficult,butlearningwillbecome!UNITYUnityGameEngine模塊一:熟悉游戲物體和組件項(xiàng)目二:訪問(wèn)游戲物體UnityGameEngineUNITY模塊一熟悉游戲物體和組件初識(shí)Unity訪問(wèn)游戲物體控制游戲物體使用游戲物體和組件項(xiàng)目一項(xiàng)目二項(xiàng)目三項(xiàng)目四任務(wù)概述開(kāi)發(fā)游戲的第一步是搭建游戲場(chǎng)景,這就需要開(kāi)發(fā)者了解游戲物體及其屬性,Unity中創(chuàng)建的所有對(duì)象都屬于游戲物體,比如3D物體、燈光、聲音、粒子等,要想進(jìn)行游戲創(chuàng)作,要先創(chuàng)建這些游戲物體并通過(guò)一定的方法獲取到它們,從而進(jìn)行相關(guān)控制,讓其按照我們的想法進(jìn)行運(yùn)動(dòng)。本項(xiàng)目逐步介紹創(chuàng)建游戲物體、改變游戲物體的Transform屬性及獲取游戲物體的多種方法。行業(yè)PPT模板/hangye/學(xué)習(xí)目標(biāo)011.能夠正確創(chuàng)建及使用游戲物體2.能夠利用腳本訪問(wèn)創(chuàng)建的游戲物體教學(xué)目標(biāo)重難點(diǎn)重點(diǎn):改變游戲物體的Transform屬性難點(diǎn):利用腳本獲取游戲物體項(xiàng)目實(shí)現(xiàn)02任務(wù)1:創(chuàng)建游戲物體(1)點(diǎn)擊GameObject菜單,選擇3DObject子菜單中的對(duì)象。1.直接創(chuàng)建游戲物體(2)在Hierarchy視圖中單擊右鍵,選擇3DObjcet中的對(duì)象。項(xiàng)目實(shí)現(xiàn)02任務(wù)1:創(chuàng)建游戲物體Unity自帶的游戲物體包括:(1)Cube:立方體(2)Sphere:球體(3)Capsule:膠囊體(4)Cylinder:圓柱體(5)Plane:平面(6)Quad:方塊1.直接創(chuàng)建游戲物體項(xiàng)目實(shí)現(xiàn)02任務(wù)1:創(chuàng)建游戲物體為攝像機(jī)添加腳本:2.使用腳本動(dòng)態(tài)創(chuàng)建游戲物體voidStart(){GameObject.CreatePrimitive(PrimitiveType.Cube);//創(chuàng)建一個(gè)游戲物體
transform.position=newVector3(0,0,0);//設(shè)置創(chuàng)建的游戲物體位于世界中心
}項(xiàng)目實(shí)現(xiàn)02任務(wù)2:改變游戲物體的Transform屬性voidUpdate(){transform.position=newVector3(0,1,0);}1.創(chuàng)建Cube,位于世界中心。2.
為Cube添加腳本,Cube向上移動(dòng)了一個(gè)單位的距離。制作步驟提示:3.Cube一直向上移動(dòng)。voidUpdate(){transform.position+=newVector3(0,0.02f,0);}項(xiàng)目實(shí)現(xiàn)02任務(wù)2:改變游戲物體的Transform屬性voidUpdate(){transform.Translate(Vector3.up*Time.deltaTime);}4.
Cube沿著自身坐標(biāo)的Y軸向上平滑的移動(dòng)。制作步驟提示:5.
Cube沿著世界坐標(biāo)向上方移動(dòng)。voidUpdate()
{transform.Translate(Vector3.up*Time.deltaTime,Space.World);}項(xiàng)目實(shí)現(xiàn)02任務(wù)2:改變游戲物體的Transform屬性voidUpdate(){transform.Rotate(0,5*Time.deltaTime,0);}6.Cube繞著自身的Y軸進(jìn)行旋轉(zhuǎn)。制作步驟提示:7.
Cube繞著世界坐標(biāo)的Y軸進(jìn)行旋轉(zhuǎn)。voidUpdate(){transform.Rotate(newVector3(0,45*Time.deltaTime,0),Space.World);}項(xiàng)目實(shí)現(xiàn)02任務(wù)2:改變游戲物體的Transform屬性voidUpdate(){transform.Rotate(newVector3(0,45*Time.deltaTime,0),Space.World);transform.localScale=newVector3(2,1,2);}8.Cube在X和Z軸上產(chǎn)生縮放的效果。制作步驟提示:項(xiàng)目實(shí)現(xiàn)02任務(wù)3:獲取游戲物體1.通過(guò)腳本中的方法訪問(wèn)其它游戲物體(1)創(chuàng)建一個(gè)Cube和一個(gè)Capsule。(2)為Capsule添加Test腳本文件。(3)為Cube添加obj腳本文件。制作步驟提示:publicclassTest:MonoBehaviour{publicvoidballrotate(){this.transform.Rotate(1,0,0);}}publicclassobj:MonoBehaviour{publicGameObjectotherObj;voidUpdate(){Testtest=otherObj.GetComponent<Test>();test.ballrotate();}}項(xiàng)目實(shí)現(xiàn)02任務(wù)3:獲取游戲物體2.通過(guò)名字或標(biāo)簽訪問(wèn)其它游戲物體(1)創(chuàng)建三個(gè)游戲物體Cube、Sphere和Capsule。(2)為Capsule添加標(biāo)簽ca。(3)為Sphere添加腳本文件。制作步驟提示:usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclasstagmove:MonoBehaviour{voidUpdate(){GameObjectobj1=GameObject.Find("Cube");//獲取名為Cube的游戲物體
obj1.transform.Rotate(1,0,0);//讓物體旋轉(zhuǎn)
GameObjectobj2=GameObject.FindWithTag("ca");//獲取標(biāo)簽為ca的游戲物體
obj2.transform.Rotate(1,0,0);//讓物體旋轉(zhuǎn)
}}項(xiàng)目實(shí)現(xiàn)02任務(wù)3:獲取游戲物體3.通過(guò)父子關(guān)系訪問(wèn)其它游戲物體(1)創(chuàng)建三個(gè)游戲物體Cube、Sphere和Capsule,并調(diào)整它們的父子關(guān)系。(2)為Sphere添加腳本文件。制作步驟提示:publicclasslevel:MonoBehaviour{voidUpdate(){transform.Find("Cube").Rotate(1,0,0);//找到名字為Cube的物體讓其旋轉(zhuǎn)
transform.parent.Rotate(1,0,0);//讓當(dāng)前物體的父物體進(jìn)行旋轉(zhuǎn)
}}內(nèi)容總結(jié)03123創(chuàng)建與使用游戲物體改變游戲物體的Transform屬性獲取游戲物體HomeWork練習(xí)游戲物體的創(chuàng)建及用腳本獲取游戲物體與修改屬性的方法。路雖遠(yuǎn),行則將至!書雖難,學(xué)則必成!Thoughtheroadislong,thejourneyisnear;Booksaredifficult,butlearningwillbecome!UNITYUnityGameEngine模塊一:熟悉游戲物體和組件項(xiàng)目三:控制游戲物體UnityGameEngineUNITY模塊一熟悉游戲物體和組件初識(shí)Unity訪問(wèn)游戲物體控制游戲物體使用游戲物體和組件項(xiàng)目一項(xiàng)目二項(xiàng)目三項(xiàng)目四任務(wù)概述Unity是一款綜合性很強(qiáng)的工具,創(chuàng)建好游戲中的物體后,其交互功能的實(shí)現(xiàn)要通過(guò)C#腳本進(jìn)行控制,因此,既需要開(kāi)發(fā)者有清晰縝密的邏輯思維能力,也要有多學(xué)科知識(shí)儲(chǔ)備。本項(xiàng)目通過(guò)立方體的移動(dòng)動(dòng)畫介紹物體控制的兩種實(shí)現(xiàn)方法,同時(shí)介紹物體展示效果的實(shí)現(xiàn)方法,進(jìn)一步熟悉腳本的使用。行業(yè)PPT模板/hangye/學(xué)習(xí)目標(biāo)011.掌握協(xié)同程序使用知識(shí)2.掌握獲取鼠標(biāo)輸入事件知識(shí)教學(xué)目標(biāo)重難點(diǎn)重點(diǎn):控制游戲物體腳本的編寫方法難點(diǎn):協(xié)同程序的使用項(xiàng)目實(shí)現(xiàn)02任務(wù)1:立方體四周轉(zhuǎn)圈移動(dòng)(非協(xié)程)1.在平面上創(chuàng)建一個(gè)立方體。2.設(shè)置立方體的位置為(3,0.5,-3)。3.為立方體添加腳本。制作步驟提示:voidUpdate(){transform.position+=v;if(transform.position.z>3)
{transform.position=newVector3(3,transform.position.y,3);Turn("left");}if(transform.position.x<-3)
{transform.position=newVector3(-3,transform.position.y,3);Turn("down");}if(transform.position.z<-3)
{transform.position=newVector3(-3,transform.position.y,-3);Turn("right");}if(transform.position.x>3)
{
transform.position=newVector3(3,transform.position.y,-3);Turn("up");}
}publicclasscubeMove:MonoBehaviour{privateVector3v=newVector3();privatefloatspeed=0.0375f;
voidStart(){v.z=speed;//定義初始移動(dòng)方向
v.x=0;}voidTurn(stringdirection){switch(direction){case"up":v.z=speed;v.x=0;break;case"down":v.z=-speed;v.x=0;break;case"left":v.x=-speed;v.z=0;break;case"right":v.x=speed;v.z=0;break;}}}項(xiàng)目實(shí)現(xiàn)02任務(wù)2:立方體四周轉(zhuǎn)圈移動(dòng)(協(xié)程)1.搭建與上一任務(wù)相同的場(chǎng)景。2.為立方體添加腳本。制作步驟提示:voidFixedUpdate(){transform.position+=v;}IEnumeratorRoutine(){v.z=speed;v.x=0;yieldreturnnewWaitForSeconds(3f);//等待3秒
v.z=0;v.x=-speed;yieldreturnnewWaitForSeconds(3f);v.z=-speed;v.x=0;yieldreturnnewWaitForSeconds(3f);v.z=0;v.x=speed;yieldreturnnewWaitForSeconds(3f);StartCoroutine(Routine());}}publicclasscubeMoveCoroutine:MonoBehaviour{privateVector3v=newVector3();privatefloatspeed=0.0375f;voidStart(){StartCoroutine(Routine());//開(kāi)啟協(xié)同程序
}項(xiàng)目實(shí)現(xiàn)02任務(wù)3:物體展示動(dòng)畫1.導(dǎo)入資源包,利用預(yù)制體布置場(chǎng)景。2.利用空物體調(diào)整模型旋轉(zhuǎn)中心點(diǎn)。3.為攝像機(jī)添加腳本文件。制作步驟提示:publicclassshowObj:MonoBehaviour{publicTransformobj;publicfloatspeed=2;//旋轉(zhuǎn)速度
privatebool_mouseDown=false;//鼠標(biāo)按下標(biāo)志
voidUpdate(){if(Input.GetMouseButtonDown(0))_mouseDown=true;elseif(Input.GetMouseButtonUp(0))_mouseDown=false;if(_mouseDown){floatfMouseX=Input.GetAxis("MouseX");floatfMouseY=Input.GetAxis("MouseY");obj.Rotate(Vector3.up,fMouseX*speed,Space.World);//上下旋轉(zhuǎn)
obj.Rotate(Vector3.right,fMouseY*speed,Space.World);//左右旋轉(zhuǎn)
}}}內(nèi)容總結(jié)03123編寫控制游戲物體腳本協(xié)同程序使用物體展示動(dòng)畫HomeWork復(fù)習(xí)本任務(wù)內(nèi)容,進(jìn)一步熟悉控制游戲物體腳本的編寫方法,同時(shí)練習(xí)協(xié)同程序的使用。路雖遠(yuǎn),行則將至!書雖難,學(xué)則必成!Thoughtheroadislong,thejourneyisnear;Booksaredifficult,butlearningwillbecome!UNITYUnityGameEngine模塊一:熟悉游戲物體和組件項(xiàng)目四:使用游戲物體和組件UnityGameEngineUNITY模塊一熟悉游戲物體和組件初識(shí)Unity訪問(wèn)游戲物體控制游戲物體使用游戲物體和組件項(xiàng)目一項(xiàng)目二項(xiàng)目三項(xiàng)目四任務(wù)概述組件是綁定到游戲?qū)ο笊系囊唤M相關(guān)屬性,游戲物體通過(guò)組件可以獲取到相應(yīng)的屬性和功能。本項(xiàng)目首先介紹組件的使用方法,然后通過(guò)克隆游戲物體模擬游戲中重復(fù)出現(xiàn)的怪物、快速發(fā)射的子彈用到的技術(shù),通過(guò)倒計(jì)時(shí)動(dòng)畫模擬物體的冷卻時(shí)間、英雄的復(fù)活等計(jì)時(shí)效果的實(shí)現(xiàn)方法。行業(yè)PPT模板/hangye/學(xué)習(xí)目標(biāo)011.能夠正確添加、獲取、修改及移除組件2.能夠?qū)崿F(xiàn)物體的克隆和倒計(jì)時(shí)功能3.會(huì)使用預(yù)制體教學(xué)目標(biāo)重難點(diǎn)重點(diǎn):組件的使用難點(diǎn):對(duì)克隆和計(jì)時(shí)器腳本的理解項(xiàng)目實(shí)現(xiàn)02任務(wù)1:使用組件1.利用Plane和Cube創(chuàng)建場(chǎng)景。2.為Cube添加腳本。制作步驟提示:publicclassuseComponent:MonoBehaviour{publicGameObjectobj;privateRigidbodyrb;IEnumeratorStart(){rb=gameObject.GetComponent<Rigidbody>();
if(rb!=null){gameObject.GetComponent<Renderer>().material.color=Color.red;
rb.useGravity=false;
yieldreturnnewWaitForSeconds(2);Destroy(obj);
}else{gameObject.GetComponent<Renderer>().material.color=Color.blue;
gameObject.AddComponent<Rigidbody>();
}}}項(xiàng)目實(shí)現(xiàn)02任務(wù)2:克隆游戲物體1.利用腳本實(shí)現(xiàn)物體克隆(1)新建Cube,顏色為藍(lán)色。(2)將Cube制作成預(yù)制體。(3)為攝像機(jī)添加腳本文件。制作步驟提示:publicclassinsdemo:MonoBehaviour{publicGameObjectobj;inti=0;voidStart(){while(i<5){Instantiate(obj,newVector3(i*2.0f,0,0),Quaternion.identity);
//水平方向每間隔兩個(gè)單位克隆一個(gè)obj,旋轉(zhuǎn)角不變
i++;}}}項(xiàng)目實(shí)現(xiàn)02任務(wù)2:克隆游戲物體2.利用計(jì)時(shí)器腳本實(shí)現(xiàn)物體克?。?)創(chuàng)建新的場(chǎng)景,編寫腳本文件。(2)為攝像機(jī)添加腳本文件。制作步驟提示:publicclassinsTimeDemo:MonoBehaviour{publicGameObjectobj;floatcdTime=0;//定義計(jì)時(shí)器變量
voidUpdate(){cdTime+=Time.deltaTime;if(cdTime>=2){cdTime=0;//計(jì)時(shí)器變量大于等于2秒時(shí),清零
CreateObj();}}voidCreateObj(){GameObjectnewObj=GameObject.Instantiate(obj);//克隆objfloatx=Random.Range(0.1f,10f);//生成隨機(jī)變量
floaty=Random.Range(0.1f,10f);floatz=Random.Range(0.1f,10f);Vector3pos=newVector3(x,y,z);newObj.transform.position=pos;//設(shè)置物體出現(xiàn)的位置
newObj.transform.eulerAngles=pos;//設(shè)置物體的角度
}}項(xiàng)目實(shí)現(xiàn)02任務(wù)3:倒計(jì)時(shí)效果1.利用UI布置場(chǎng)景。2.為攝像機(jī)添加倒計(jì)時(shí)腳本。制作步驟提示:IEnumeratorstartTime(){while(TotalTime>0)//當(dāng)剩余時(shí)間大于0{yieldreturnnewWaitForSeconds(1);//等待1秒后開(kāi)始倒計(jì)時(shí)
TotalTime--;minute=TotalTime/60;//計(jì)算分鐘
second=TotalTime%60;//計(jì)算秒
if(second>=10)//如果大于10秒鐘,設(shè)置文本的顯示效果
{TimeText.text="0"+minute+":"+second;}elseif(TotalTime<=0)//如果倒計(jì)時(shí)結(jié)束,顯示過(guò)年好
{TimeText.text="過(guò)年好";}else//如果小于10秒鐘,設(shè)置文本顯示效果
TimeText.text="0"+minute+":0"+second;}}}usingUnityEngine.UI;publicclassdaojishi:MonoBehaviour{publicintTotalTime=90;//定義倒計(jì)時(shí)總時(shí)間長(zhǎng)度
publicTextTimeText;//定義顯示時(shí)間的文本
privateintminute;//定義分鐘
privateintsecond;//定義秒
voidStart(){StartCoroutine(startTime());//啟用協(xié)程
}內(nèi)容總結(jié)03123組件及預(yù)制體知識(shí)編寫克隆腳本編寫計(jì)時(shí)器腳本HomeWork復(fù)習(xí)本任務(wù)內(nèi)容,練習(xí)游戲物體與組件的使用。路雖遠(yuǎn),行則將至!書雖難,學(xué)則必成!Thoughtheroadislong,thejourneyisnear;Booksaredifficult,butlearningwillbecome!UNITYUnityGameEngine模塊二:使用物理引擎項(xiàng)目五:剛體—力的模擬UnityGameEngineUNITY模塊二使用物理引擎剛體——力的模擬碰撞體——物體碰撞檢測(cè)角色控制器——控制角色運(yùn)動(dòng)物理材質(zhì)與射線——射線技術(shù)應(yīng)用項(xiàng)目五項(xiàng)目六項(xiàng)目七項(xiàng)目八關(guān)節(jié)——關(guān)節(jié)模擬動(dòng)畫項(xiàng)目九任務(wù)概述2021年4月29日,中國(guó)空間站天和核心艙在海南文昌發(fā)射場(chǎng)發(fā)射升空,準(zhǔn)確進(jìn)入預(yù)定軌道,6月17日,神舟十二號(hào)載人飛船發(fā)射升空,與天和核心艙形成組合體,空間站建設(shè)中一次次里程碑式的事件預(yù)示著中國(guó)強(qiáng)大的科技實(shí)力。在這個(gè)過(guò)程中,需要精確計(jì)算和控制火箭的推力和速度,以確保成功發(fā)射和精確入軌。生活中使用力的效果隨處可見(jiàn),本項(xiàng)目主要介紹物理引擎中剛體組件的使用以及用其模擬的各種力的效果。行業(yè)PPT模板/hangye/學(xué)習(xí)目標(biāo)011.能夠正確添加剛體組件并設(shè)置屬性2.能夠正確編寫腳本控制剛體,模擬各種力的效果教學(xué)目標(biāo)重難點(diǎn)重點(diǎn):剛體的使用難點(diǎn):各種力效果的模擬項(xiàng)目實(shí)現(xiàn)02任務(wù)1:使用AddForce施加力1.利用Cube和給出的材質(zhì)圖片布置場(chǎng)景。制作步驟提示2.為5個(gè)Cube添加剛體組件。項(xiàng)目實(shí)現(xiàn)02任務(wù)1:使用AddForce施加力3.為左側(cè)第1個(gè)Cube添加rigi1腳本。4.運(yùn)行游戲,此時(shí),Cube受到重力的作用會(huì)落到平面上,如果點(diǎn)擊鼠標(biāo)左鍵,該Cube會(huì)類似子彈一樣向前飛出。制作步驟提示usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassrigi1:MonoBehaviour{privateRigidbodymyRigidbody;//聲明剛體組件
voidStart(){myRigidbody=this.GetComponent<Rigidbody>();//獲取剛體組件
}voidUpdate(){if(Input.GetMouseButtonDown(0))//判斷是否按下了鼠標(biāo)左鍵
{myRigidbody.AddForce(Vector3.forward*10,ForceMode.Impulse);//施加向前的瞬時(shí)力
}}}項(xiàng)目實(shí)現(xiàn)02任務(wù)1:使用AddForce施加力5.為左側(cè)第2個(gè)Cube添加rigi2腳本。6.運(yùn)行游戲,該Cube受瞬間力的影響會(huì)先向上移動(dòng)一段距離后再落下(可調(diào)整剛體組件中Cube的質(zhì)量)。制作步驟提示usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassrigi2:MonoBehaviour{privateRigidbodymyRigidbody;voidStart(){myRigidbody=this.GetComponent<Rigidbody>();myRigidbody.AddForce(newVector3(0,10,0),ForceMode.Impulse);//施加瞬間力
}}項(xiàng)目實(shí)現(xiàn)02任務(wù)1:使用AddForce施加力7.為左側(cè)第3個(gè)Cube添加rigi3腳本。8.運(yùn)行游戲,該Cube受重力的影響會(huì)先向下落,但因受持續(xù)向上力的影響會(huì)繼續(xù)向上移動(dòng)(可調(diào)整剛體組件中Cube的質(zhì)量)。制作步驟提示usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassrigi3:MonoBehaviour{privateRigidbodymyRigidbody;voidStart(){myRigidbody=this.GetComponent<Rigidbody>();}voidUpdate(){myRigidbody.AddForce(Vector3.up*10,ForceMode.Force);//施加持續(xù)向上的力
}}項(xiàng)目實(shí)現(xiàn)02任務(wù)1:使用AddForce施加力9.為左側(cè)第4個(gè)Cube添加rigi4腳本。10.運(yùn)行游戲,該Cube會(huì)一直向上旋轉(zhuǎn)移動(dòng)。制作步驟提示usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassrigi4:MonoBehaviour{privateRigidbodymyRigidbody;voidStart(){myRigidbody=this.GetComponent<Rigidbody>();}voidFixedUpdate(){myRigidbody.AddForce(Vector3.up*10,ForceMode.Acceleration);//施加持續(xù)加速度
myRigidbody.MoveRotation(transform.rotation*Quaternion.Euler(newVector3(0,100,0)*Time.deltaTime));//設(shè)置物體旋轉(zhuǎn)
}}項(xiàng)目實(shí)現(xiàn)02任務(wù)1:使用AddForce施加力11.為左側(cè)第5個(gè)Cube添加rigi5腳本。12.該Cube向上運(yùn)動(dòng)一段時(shí)間后會(huì)落下來(lái)。制作步驟提示usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassrigi5:MonoBehaviour{privateRigidbodymyRigidbody;voidStart(){myRigidbody=this.GetComponent<Rigidbody>();myRigidbody.AddForce(Vector3.up*10,ForceMode.VelocityChange);//施加瞬間加速度
}}項(xiàng)目實(shí)現(xiàn)02任務(wù)2:模擬爆炸力1.模擬空中爆炸效果(1)利用Cube和Plane布置場(chǎng)景。(2)為小球和所有的Cube添加Rigidbody剛體組件。(3)為小球添加ExplosionForce腳本。制作步驟提示:usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassExplosionForce:MonoBehaviour{privatefloatradius=10.0f;
privatefloatforce=1000.0f;
voidUpdate(){if(Input.GetKeyDown(KeyCode.Space))
{Explode();}}privatevoidExplode(){Collider[]colliders=Physics.OverlapSphere(transform.position,radius);foreach(Colliderobjincolliders){if(obj.GetComponent<Rigidbody>()!=null){obj.GetComponent<Rigidbody>().AddExplosionForce(force,transform.position,radius);
}}}}項(xiàng)目實(shí)現(xiàn)02任務(wù)2:模擬爆炸力2.模擬地面爆炸(1)更改上面的代碼。(2)當(dāng)按下空格鍵時(shí),物體向上飛出爆炸。制作步驟提示:obj.GetComponent<Rigidbody>().AddExplosionForce(force,transform.position,radius,100.0f);項(xiàng)目實(shí)現(xiàn)02任務(wù)2:模擬爆炸力3.模擬手雷爆炸(1)將場(chǎng)景中的Cube排列的緊密一些,靠近小球這個(gè)爆炸體,修改代碼。(2)運(yùn)行游戲,小球斜向飛出的同時(shí)會(huì)帶動(dòng)周圍的物體飛出,模擬手雷爆炸的效果。制作步驟提示:usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassExplosionForce:MonoBehaviour{privateRigidbodymyRigidbody;voidStart(){myRigidbody=GetComponent<Rigidbody>();myRigidbody.AddForceAtPosition(newVector3(10,10,10),Vector3.zero,ForceMode.Impulse);//從物體的中心施加一個(gè)瞬間力
}}項(xiàng)目實(shí)現(xiàn)02任務(wù)3:獲取游戲物體2.通過(guò)名字或標(biāo)簽訪問(wèn)其它游戲物體(1)創(chuàng)建三個(gè)游戲物體Cube、Sphere和Capsule。(2)為Capsule添加標(biāo)簽ca。(3)為Sphere添加腳本文件。制作步驟提示:usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclasstagmove:MonoBehaviour{voidUpdate(){GameObjectobj1=GameObject.Find("Cube");//獲取名為Cube的游戲物體
obj1.transform.Rotate(1,0,0);//讓物體旋轉(zhuǎn)
GameObjectobj2=GameObject.FindWithTag("ca");//獲取標(biāo)簽為ca的游戲物體
obj2.transform.Rotate(1,0,0);//讓物體旋轉(zhuǎn)
}}內(nèi)容總結(jié)03123剛體添加及屬性設(shè)置用AddForce施加力模擬爆炸力HomeWork復(fù)習(xí)本任務(wù)內(nèi)容,練習(xí)剛體組件的使用,理解剛體常用方法的參數(shù)含義。路雖遠(yuǎn),行則將至!書雖難,學(xué)則必成!Thoughtheroadislong,thejourneyisnear;Booksaredifficult,butlearningwillbecome!UNITYUnityGameEngine模塊二:使用物理引擎項(xiàng)目六:碰撞體—物體碰撞檢測(cè)UnityGameEngineUNITY模塊二使用物理引擎剛體——力的模擬碰撞體——物體碰撞檢測(cè)角色控制器——控制角色運(yùn)動(dòng)物理材質(zhì)與射線——射線技術(shù)應(yīng)用項(xiàng)目五項(xiàng)目六項(xiàng)目七項(xiàng)目八關(guān)節(jié)——關(guān)節(jié)模擬動(dòng)畫項(xiàng)目九任務(wù)概述宇宙承載著中國(guó)人民千百年來(lái)的向往,2021年4月24日,智能機(jī)器人祝融號(hào)火星車驚艷亮相,它采用了許多先進(jìn)的科技,包括自主導(dǎo)航、避障、通信和能源管理等技術(shù),指引航天人不斷超越、逐夢(mèng)星辰。隨著科技的進(jìn)步,智能機(jī)器人在生活中的應(yīng)用也越來(lái)越廣泛,超市、火車站、圖書館、旅游景區(qū)等經(jīng)常能見(jiàn)到各種機(jī)器人,它們?cè)谛凶咧邢袢艘粯訐碛兄詣?dòng)規(guī)避碰撞的本領(lǐng),在機(jī)器人技術(shù)中,碰撞檢測(cè)是一個(gè)非常重要的功能。本項(xiàng)目主要介紹Unity物理引擎中的碰撞檢測(cè)技術(shù)。行業(yè)PPT模板/hangye/學(xué)習(xí)目標(biāo)011.能夠正確設(shè)置碰撞體的屬性參數(shù)2.能夠應(yīng)用碰撞體與觸發(fā)器制作碰撞檢測(cè)動(dòng)畫教學(xué)目標(biāo)重難點(diǎn)重點(diǎn):碰撞體的使用難點(diǎn):觸發(fā)器事件的應(yīng)用項(xiàng)目實(shí)現(xiàn)02任務(wù)1:忽略碰撞檢測(cè)1.利用給出的材質(zhì)圖片及游戲物體布置場(chǎng)景。2.將同樣的顏色的小球放在同一空物體下。3.調(diào)整攝像機(jī)及小球的位置。4.為所有小球添加剛體組件。5.將所有紅色的小球選中,將其層名稱設(shè)置為red,綠色小球設(shè)置為green,黃色小球設(shè)置為yellow,藍(lán)色小球設(shè)置為blue。制作步驟提示項(xiàng)目實(shí)現(xiàn)02任務(wù)1:忽略碰撞檢測(cè)6.為主攝像機(jī)添加IgnoreCollision腳本,將第1列的四個(gè)小球添加在腳本屬性中。7.運(yùn)行游戲,第一列的小球雖然位于不同的層,但是他們之間可以忽略碰撞檢測(cè)而融合到一起。制作步驟提示publicclassIgnoreCollision:MonoBehaviour{publicTransformRedBall;publicTransformGreenBall;publicTransformBlueBall;publicTransformYellowBall;voidStart(){Physics.IgnoreCollision(RedBall.GetComponent<Collider>(),GreenBall.GetComponent<Collider>());Physics.IgnoreCollision(RedBall.GetComponent<Collider>(),BlueBall.GetComponent<Collider>());Physics.IgnoreCollision(RedBall.GetComponent<Collider>(),YellowBall.GetComponent<Collider>());Physics.IgnoreCollision(BlueBall.GetComponent<Collider>(),GreenBall.GetComponent<Collider>());Physics.IgnoreCollision(YellowBall.GetComponent<Collider>(),GreenBall.GetComponent<Collider>());Physics.IgnoreCollision(BlueBall.GetComponent<Collider>(),YellowBall.GetComponent<Collider>());}}項(xiàng)目實(shí)現(xiàn)02任務(wù)1:忽略碰撞檢測(cè)8.單擊Edit菜單,選擇ProjectSettings,在彈出的窗口中選擇Physics,將同層之間的碰撞檢測(cè)勾選取消。9.運(yùn)行游戲,發(fā)現(xiàn)同層之間也可以實(shí)現(xiàn)忽略碰撞。制作步驟提示項(xiàng)目實(shí)現(xiàn)02任務(wù)2:觸發(fā)器動(dòng)畫1.利用Cube和Sphere布置場(chǎng)景。2.為四周的邊框設(shè)置標(biāo)簽wall,黃色cube設(shè)置標(biāo)簽為zuanshi。制作步驟提示3.為小球添加剛體組件。4.在黃色cube的BoxCollider組件中,勾選IsTrigger,使碰撞體用于觸發(fā)事件。項(xiàng)目實(shí)現(xiàn)02任務(wù)2:觸發(fā)器動(dòng)畫5.
新建Scoretxt文本,用來(lái)顯示游戲得分,文本won,用來(lái)顯示游戲輸贏的文字,將畫布Canvas設(shè)置為主攝像機(jī)的子物體。制作步驟提示usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassrotate:MonoBehaviour{voidUpdate(){transform.Rotate(newVector3(0,0.5f,0));}}6.為所有的鉆石添加rotate腳本,讓其自動(dòng)旋轉(zhuǎn)。項(xiàng)目實(shí)現(xiàn)02任務(wù)2:觸發(fā)器動(dòng)畫7.為紅色小球添加colliderMove腳本。制作步驟提示voidUpdate(){floath=Input.GetAxis("Horizontal");floatv=Input.GetAxis("Vertical");transform.Translate(newVector3(h,0,v)*speed*Time.deltaTime);//設(shè)置小球移動(dòng)
}privatevoidOnTriggerEnter(Colliderother){if(other.tag=="zuanshi")//判斷標(biāo)簽是否為zuanshi{Destroy(other.gameObject);//銷毀游戲物體
score++;//讓分?jǐn)?shù)增加
scoreTxt.text="你的分?jǐn)?shù)是:"+score;//讓分?jǐn)?shù)文本顯示
if(score==10)//判斷分?jǐn)?shù)是否為10分
{youwon.text="你贏了!";//顯示你贏了文本
gameObject.GetComponent<colliderMove>().enabled=false;//小球不能移動(dòng)
}}}privatevoidOnCollisionEnter(Collisioncollision){if(collision.gameObject.tag=="wall")//判斷標(biāo)簽是否為wall{youwon.text="游戲結(jié)束";//顯示游戲結(jié)束文本
gameObject.GetComponent<colliderMove>().enabled=false;//設(shè)置小球不能移動(dòng)
}}}usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;usingUnityEngine.UI;publicclasscolliderMove:MonoBehaviour{publicfloatspeed=2f;//聲明移動(dòng)速度
publicintscore=0;//設(shè)置初始得分
publicTextscoreTxt;//聲明分?jǐn)?shù)文本
publicTextyouwon;//聲明輸贏文本
privateRigidbodyrig;//聲明剛體
voidStart(){rig=GetComponent<Rigidbody>();//獲取剛體組件
}項(xiàng)目實(shí)現(xiàn)02任務(wù)2:觸發(fā)器動(dòng)畫8.為攝像機(jī)添加followMove腳本。9.運(yùn)行游戲,按上下左右方向鍵可移動(dòng)小球,當(dāng)吃掉鉆石后會(huì)顯示分?jǐn)?shù),當(dāng)分?jǐn)?shù)達(dá)到10分,顯示“你贏了”,如果碰到了邊框,則顯示“游戲結(jié)束”。制作步驟提示usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassfollowMove:MonoBehaviour{publicTransformsphereTransform;privateVector3distance;voidStart(){distance=transform.position-sphereTransform.position;//計(jì)算機(jī)攝像機(jī)和小球間的距離
}voidUpdate(){transform.position=sphereTransform.position+distance;//設(shè)置攝像機(jī)的位置
}}內(nèi)容總結(jié)03123碰撞體組件與碰撞事件忽略碰撞檢測(cè)觸發(fā)器動(dòng)畫HomeWork復(fù)習(xí)本任務(wù)內(nèi)容,練習(xí)碰撞體組件的使用。路雖遠(yuǎn),行則將至!書雖難,學(xué)則必成!Thoughtheroadislong,thejourneyisnear;Booksaredifficult,butlearningwillbecome!UNITYUnityGameEngine模塊二:使用物理引擎項(xiàng)目七:角色控制器—控制角色運(yùn)動(dòng)UnityGameEngineUNITY模塊二使用物理引擎剛體——力的模擬碰撞體——物體碰撞檢測(cè)角色控制器——控制角色運(yùn)動(dòng)物理材質(zhì)與射線——射線技術(shù)應(yīng)用項(xiàng)目五項(xiàng)目六項(xiàng)目七項(xiàng)目八關(guān)節(jié)——關(guān)節(jié)模擬動(dòng)畫項(xiàng)目九任務(wù)概述虛擬數(shù)字人展示了數(shù)字技術(shù)的強(qiáng)大和多樣性,它們可以像真實(shí)世界的人一樣做出各種動(dòng)作。而游戲中的角色除了會(huì)有移動(dòng)、爬樓梯等各種動(dòng)作之外,還常常要與物體或其余的角色進(jìn)行交互,這都需要用到角色控制器。本項(xiàng)目主要介紹物理引擎中角色控制器的使用以及如何在不同視角下進(jìn)行角色運(yùn)動(dòng)控制。行業(yè)PPT模板/hangye/學(xué)習(xí)目標(biāo)011.能夠正確設(shè)置角色控制器的屬性參數(shù)2.能夠正確應(yīng)用角色控制器函數(shù)制作角色移動(dòng)動(dòng)畫教學(xué)目標(biāo)重難點(diǎn)重點(diǎn):角色控制器的使用難點(diǎn):角色控制函數(shù)的應(yīng)用項(xiàng)目實(shí)現(xiàn)02任務(wù)1:第三人稱視角控制角色移動(dòng)1.利用Plane、Cube和Capsule搭建場(chǎng)景,場(chǎng)景中膠囊代表角色,右側(cè)的臺(tái)階高度為0.5,最上層的臺(tái)階高度為1,左側(cè)的斜坡坡度分別為30度和60度,正面的斜坡坡度為45度,其余場(chǎng)景可自行設(shè)計(jì)。制作步驟提示2.選中膠囊,移除自帶的膠囊碰撞體組件,為其添加一個(gè)角色控制器組件CharacterController。項(xiàng)目實(shí)現(xiàn)02任務(wù)1:第三人稱視角控制角色移動(dòng)3.為膠囊添加ccController腳本。4.在膠囊的角色控制器組件中,設(shè)置允許其爬坡的角度(SlopeLimit)為45度,允許其行走的臺(tái)階高度(StepOffset)為0.5。制作步驟提示voidUpdate(){if(cc.isGrounded)//判斷角色是否在地面
{if(Input.GetKey(KeyCode.D))//按D鍵向右走
{cc.Move(Vector3.right*speed*Time.deltaTime);}if(Input.GetKey(KeyCode.A))//按A鍵向左走
{cc.Move(Vector3.left*speed*Time.deltaTime);}if(Input.GetKey(KeyCode.W))//按W鍵向前走
{cc.Move(Vector3.forward*speed*Time.deltaTime);}if(Input.GetKey(KeyCode.S))//按S鍵向后走
{cc.Move(Vector3.back*speed*Time.deltaTime);}}else{cc.Move(Vector3.down*speed*Time.deltaTime);//若不在地面,則讓其落到地面
}}}publicclassccController:MonoBehaviour{publicfloatspeed=3;//設(shè)置移動(dòng)速度
privateCharacterControllercc;//聲明角色控制器
voidStart(){cc=GetComponent<CharacterController>();
}
項(xiàng)目實(shí)現(xiàn)02任務(wù)1:第三人稱視角控制角色移動(dòng)5.為攝像機(jī)添加follow腳本,制作攝像機(jī)跟隨動(dòng)畫。6.運(yùn)行游戲,可以實(shí)現(xiàn)第三人稱角色的移動(dòng)。制作步驟提示usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;publicclassfollow:MonoBehaviour{publicTransformmyTransform;privateVector3distance;voidStart(){distance=transform.position-myTransform.position;}voidUpdate(){transform.position=myTransform.position+distance;
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年安徽體育運(yùn)動(dòng)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能考試模擬測(cè)試卷附答案解析
- 2025年法庫(kù)縣幼兒園教師招教考試備考題庫(kù)附答案解析(奪冠)
- 2025年定結(jié)縣幼兒園教師招教考試備考題庫(kù)附答案解析(奪冠)
- 2025年德安縣招教考試備考題庫(kù)及答案解析(必刷)
- 2025年阜陽(yáng)幼兒師范高等??茖W(xué)校單招職業(yè)技能考試模擬測(cè)試卷附答案解析
- 2025延安市青少年宮招聘?jìng)淇伎荚囋囶}及答案解析
- 2026四川廣元市昭化區(qū)招聘城鎮(zhèn)公益性崗位4人備考考試試題及答案解析
- 2025貴州水投水庫(kù)運(yùn)營(yíng)管理黔東南有限公司第二次招聘模擬筆試試題及答案解析
- 小騾子找媽媽課件
- 企業(yè)風(fēng)險(xiǎn)管理分析報(bào)告范文
- DL∕T 1430-2015 變電設(shè)備在線監(jiān)測(cè)系統(tǒng)技術(shù)導(dǎo)則
- 國(guó)家開(kāi)放大學(xué)電大《11876國(guó)際私法》期末終考題庫(kù)及答案
- 員工下班喝酒意外免責(zé)協(xié)議書
- 2024年載貨汽車項(xiàng)目營(yíng)銷策劃方案
- 同等學(xué)力全國(guó)統(tǒng)考要點(diǎn)識(shí)記口訣大全(臨床醫(yī)學(xué))
- 人工智能賦能制造業(yè)
- 出版社投稿郵箱匯總
- 道家思想英文簡(jiǎn)介課件
- 建設(shè)工程監(jiān)理規(guī)劃新舊對(duì)比解讀
- 來(lái)料檢驗(yàn)流程與注意事項(xiàng)
- 當(dāng)代科學(xué)技術(shù)概論知到章節(jié)答案智慧樹(shù)2023年哈爾濱工業(yè)大學(xué)
評(píng)論
0/150
提交評(píng)論