資源描述:
《Unity3D游戲開發(fā)之基于ITween實現(xiàn)尋路功能》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、Unity3D游戲開發(fā)之基于ITween實現(xiàn)尋路功能今天研究了下Unity3D的尋路功能,忽然發(fā)現(xiàn)Unity3D自帶的尋路功能只支持付費版,內(nèi)心不禁感到一陣失落。后來在宣雨松的博客上看到一篇關(guān)于ITween的文章,我發(fā)現(xiàn)這簡直就是我等使用Unity免費版的福音啊,因為這個插件可以解決我們今天的尋路問題。壓抑不住內(nèi)心的激動,博主到ITween官網(wǎng)下載了這個插件,結(jié)合官方的例子,產(chǎn)生了ITween實現(xiàn)尋路功能的想法。文章出處:狗刨學習網(wǎng)。具體說來,尋路功能就是為玩家或者游戲中的角色添加的一種AI,目的是在給定起點和終點后,程序可以幫助玩家或者游戲角色快速地找
2、到最優(yōu)的一條線路,復雜點的尋路系統(tǒng)可能還要考慮如何避開障礙物,那么好,現(xiàn)在我們開始一起走進尋路之旅!????首先創(chuàng)建如圖所示的游戲場景,在這里我們創(chuàng)建8個Cube來表示地面上的8個節(jié)點,我們按照一定的順序排列這些節(jié)點,就能得到一條路線。這條路線就是我們?yōu)橛螒蝮w設(shè)計的路線。接下來,我們再創(chuàng)建一個Cube,賦予其黑色的材質(zhì),以示區(qū)別。???????接下來我們導入ITween資源包文件,導入完成后,創(chuàng)建下面的腳本文件:1.usingUnityEngine;1.usingSystem.Collections;2.3.publicclassScriptContro
3、l:MonoBehaviour{4.5.??//節(jié)點數(shù)組6.??publicTransform[]paths;7.8.??voidStart()9.??{10.??????Hashtableargs=newHashtable();11.??????//設(shè)置路徑的點12.??????args.Add("path",paths);13.??????//設(shè)置類型為線性,線性效果會好一些。14.??????args.Add("easeType",iTween.EaseType.linear);15.??????//設(shè)置尋路的速度16.??????args.Add
4、("speed",8f);17.??????//移動的整體時間。如果與speed共存那么優(yōu)先speed18.??????args.Add("time",5f);19.??????//是否先從原始位置走到路徑中第一個點的位置20.??????args.Add("movetopath",true);21.??????//延遲執(zhí)行時間22.??????args.Add("delay",0.1f);23.??????//移動的過程中面朝一個點24.??????args.Add("looktarget",Vector3.zero);25.??????//三個循環(huán)類
5、型nonelooppingPong(一般循環(huán)來回)26.??????args.Add("loopType","loop");27.??????//是否讓模型始終面朝當面目標的方向28.??????//如果你發(fā)現(xiàn)你的模型在尋路的時候時鐘都是一個方向那么一定要打開這個29.??????args.Add("orienttopath",true);30.31.??????//讓模型開始尋路32.??????iTween.MoveTo(gameObject,args);33.??}34.35.36.??voidOnDrawGizmos()37.??{38.????
6、??//在scene視圖中繪制出路徑與線39.??????iTween.DrawLine(paths,Color.yellow);40.??????iTween.DrawPath(paths,Color.red);41.??}42.43.??voidUpdate()1.??{2.3.??}4.}????我們將該腳本綁定到我們的游戲體——黑色的Cube上,打開屬性面板,編輯Paths屬性,這時我們按照事先設(shè)計的路徑節(jié)點順序,將各節(jié)點拖放到下面的屬性框中,這樣就完成了對于路徑節(jié)點的添加。這時我們運行游戲,將看到黑色的Cube沿著我們預(yù)先設(shè)計的路線進行運動:?
7、?????同時,我們能夠注意到在游戲場景視圖中,游戲體運動的路徑被兩種顏色的線標示了出來,這就是今天的內(nèi)容啦,謝謝大家!