當前位置:首頁 >教程首頁 > 遊戲程序 > Unity3D遊戲開發工程師班 >教你使用UE3引擎的腳本係統

教你使用UE3引擎的腳本係統

發布時間:2018-11-17 19:57:24

 

 

導言:

Unreal引擎是全球領先的遊戲開發商和引擎研發商Epic Games的一款核心產品。作為一款成熟的商業引擎,Unreal引擎以其出色表現和強大的功能征服著遊戲開發業,成為全球一流遊戲公司購買引擎的首選產品,本教程全麵介紹了Unreal引擎在動畫、材質、特效、可以化腳本編輯,實時演算方麵的強大功能,並對使用Unreal引擎製作遊戲的方法與技巧進行了詳細闡述。

 

下麵教程開始

 

Kismet總覽

簡單來講,Kismet是一個可視化腳本設計係統,允許用戶快速簡便地創設複雜的腳本序列,而無需具有豐富的編程知識。然而,這番簡述並未闡明Kismet對gameplay的重要性。事實上,在gameplay中任何的有趣事物都會多多少少地用到Kismet,從為玩家打開一扇門的簡單任務,到玩家在關卡的某一關鍵位置手持某一特殊物體時,調入一個錯綜複雜的事件係統,都能見到它的身影。

 

Kismet:巨大網絡組合圖

Kismet是以多個模塊的網絡組合形式出現,這些模塊被稱為序列對象(Sequnce Objects),它們之間以連線連接(圖01)。各序列對象都實現一個特定功能,而它們之間的連線用於在序列對象間的信息傳輸。雖然這些網絡看上去可能會非常複雜,但隻要明確自己的創作意圖,你就會很快發現創建這樣的網絡可以是一件輕而易舉的工作。

 

下圖所示序列可表述為:當玩家接觸 Trigger_0時,將玩家傳送至Teleporter_0。

 

圖01

 

Kismet是關卡交互的中樞,因為它為藝術類工作者(非編程類工作人員)提供了創建複雜腳本的方法,以實現他們所設計的關卡。本章的目的是使您快速了解Kismet的工作方法,並協助您生成一係列基於gameplay的序列。跟著我們的進度,您完成的指南將越來越複雜,由這個過程您將領略到如何創建涵蓋極其簡單至有適當複雜度的序列。

 #p#e#

 

Kismet入門

現在你已經了解了Kismet的基本情況,就讓我們來簡單看一下它在UnrealED中的位置,同時快速了解一下它的界麵(圖02)。

 

通常是通過點擊位於工具欄中間的“打開Kismet”按鈕來進入。你也可以從UI編輯器係統內部進入Kismet。

 

圖02

 

至此,你已初步了解的Kismet的情況,以及它的位置和外觀,就讓我們動手來創建一個實際的Kismet序列吧!你將使用Kismet創建一個簡單的光源開關。

 

使用Kismet觸發光源

 

第一步

打開UnrealED,並打開DM-Ch_09_KLightSound_Start.ut3地圖文件。這是一個簡單的平台關卡,僅有一個可供瀏覽的昏暗光源(圖03)。我們將建立一個係統,通過它能夠打開第二個光源並最後播放一個聲音。

 

圖03

 

第二步

在透視視口中,在關卡主平台的一個拐角附近右擊,從關聯菜單中選擇Add Actor > Add Trigger。

 

立即打開此新建的Actor的屬性窗口(雙擊或按F4鍵)。在Advanced(進階)類別中,設置bHidden(隱藏)屬性為否(取消對此複選框的勾選)。如此一來我們在測試此關卡時就能看到觸發器了。(圖04)

 

圖04

 #p#e#

 

第三步

我們現在需要一個可觸發的光源,可以按下列步驟來創建:

 

a、在UnrealEd主菜單欄中,選擇View > Browser Windows > Actor Classes。

b、在Actor類瀏覽器內,展開Light > Point Light並選中PointLightToggleable(可開關點光源)。(圖05)

 

圖05

 

c、 在透視視口中,在關卡中觸發器的相反方向角落右擊,並選擇Add PointLightToggleable(添加可開關點光源)。

d、使用平移控件將光源從關卡的底麵向上移動。(圖06)

 

圖06

 

e、打開光源的屬性窗口,並在Light類別下,展開LightComponent(光源組件),取消勾選bEnabled(開啟)屬性。這將使光源在關卡啟動時關閉。

 

第四步

點擊打開Kismet按鈕,以打開Kismet編輯器。現在我們來創建一個簡單的序列,使玩家在接觸到觸發器時打開和關閉光源。

 

第五步

我們從得知玩家何時接觸觸發器的事件開始。在透視視口中,選擇觸發器actor。然後在Kismet窗口中右擊Sequence(序列)窗口中的空白區域,並從關聯菜單選擇New Event Using Trigger_1 > Touch。由此我們新建了一個Touch(接觸)事件,使我們可以在玩家進入觸發器接觸半徑時發起某些動作。 (圖07)

 

圖07

 #p#e#

 

第六步

現在我們需要在觸發器被接觸時建立一個發生動作。在Sequence(序列)窗口的空白區域、Touch(接觸)事件的右方某處,右擊並選擇New Action > Toggle > Toggle。你可以通過按下Ctrl鍵拖動Toggle(開關)序列對象對其重新定位,正如在材質編輯器中對象的移動方法一樣。(圖08)

 

圖08

 

第七步

僅僅創建一個Toggle(開關)序列對象是不夠的。我們需要通知Kismet所接觸的確切對象。要實現這個目標,請按照下列步驟:

 

a、在透視視口中,選擇之前創建的PointLightToggleable(可開關點光源)。

b、回到Kismet窗口,右擊Toggle(開關)對象之下的Sequence(序列)窗口空白區域,並選擇New Object Var Using PointLightToggleable_1。由此創建了一個直接綁定至關卡中PointLightToggleable actor(可開關點光源actor)的變量。 (圖09)

 

圖09

 

c、在Toggle(開關)對象上,可以看到在“Target(目標)”字樣下麵有一個粉色的輸入小方塊。從該輸入端拖出一條連線將其連至PointLightToggleable_1。觸發器對象現在已經與光源連接,並能夠進行打開與關閉動作了。 (圖10)

 

圖10

 

第八步

最後一步是將我們的Touch(接觸)事件連接至Toggle(開關)動作,該動作將在玩家進入到觸發器範圍時通知Kismet,並觸發光源狀態。

 

從Touch(接觸)對象的Touched(已接觸)輸出端拖出一條連線,連接至Toggle(開關)對象的Turn on(打開)輸入端。(圖11)

 

圖11

 

第九步

點擊Bulid all button 按鈕,重建光照,保存關卡,並測試關卡中的新建觸發器。你既可以向關卡中加入一個PlayerStart actor,或者右擊地麵,選擇Play From Here(從此播放)。

 

開始時關卡中的光照將會很昏暗。當你的遊戲人物走進觸發器範圍時,光源就會打開了。然而,此時的光源僅僅是打開了一次並無限期保持打開狀態。

华体会hth体育网 賞析
  • 2101期學員李思庭作品

    2101期學員李思庭作品

  • 2104期學員林雪茹作品

    2104期學員林雪茹作品

  • 2107期學員趙淩作品

    2107期學員趙淩作品

  • 2107期學員趙燃作品

    2107期學員趙燃作品

  • 2106期學員徐正浩作品

    2106期學員徐正浩作品

  • 2106期學員弓莉作品

    2106期學員弓莉作品

  • 2105期學員白羽新作品

    2105期學員白羽新作品

  • 2107期學員王佳蕊作品

    2107期學員王佳蕊作品

專業問題谘詢

你擔心的問題,火星幫你解答

微信掃碼入群領福利

掃碼領福利最新AI資訊

點擊谘詢
添加老師微信,馬上領取免費課程資源

1. 打開微信掃一掃,掃描左側二維碼

2. 添加老師微信,馬上領取免費課程資源

×

同學您好!

您已成功報名0元試學活動,老師會在第一時間與您取得聯係,請保持電話暢通!
確定