Unreal教學(11)——物體交互(Object Interaction with Blueprints)

1. 新建一個First Person的模板工程,

命名爲BlueprintScripting.


2. Viewport

點擊play完成之後,可以進入到射擊的場景中,

通過按住鼠標左鍵,前後移動鼠標的話,相機會前後移動。

按住鼠標右鍵,前後拖動鼠標的話,相機會旋轉。

按住鼠標的中間鍵或者左右鍵同時按,前後移動,相機則會上下移動。

按住左鍵或者右鍵相機會左右旋轉,按住中間的鍵相機會左右移動。

以上就是Level Editor中的viewport操作。


3. 放置物體

最常用的對象是actor.

英文描述

An actor is a basic object with no inherent behavior other than the ability to be rotated, moved and scaled, but it can be expanded to include more complex behavior by attaching components.

這裏的actor和components之前都有介紹,說到actor就是一個沒有自己的屬性,只能夠旋轉移動和縮放的物體,但是它可以通過添加其它的component來拓展它的功能。

我們的目標是創建一個射中之後會變換顏色的物體。

我們需要改變actor's的材料,材料的解釋

A material is an asset that can be added to an actor's mesh (which defines the physical shape of the actor) to create its look.

mesh是指actor的物理形狀,material可以理解成皮膚之類的東西。

所以改變物體顏色的一種方式是直接使用不同顏色的材料代替之前的材料。


4. 暫且材料用皮膚代替

這裏新建了一個Materials的文件夾,然後命名了一個Material類型的TargetRed的文件,可以雙擊這個文件打開一個編輯框,如下圖所示,這個是Material Editor。


5. 我們新添加了一個Vector Parameter的node,原文是這樣的

A vector parameter in the Material Editor allows us to define a color, which we can then attach to the Base Color input on the tall material definition node.

寫了一個紅色的材料

定義了Metallic和Roughness值。


6.接下來要做的事情就是在確定物體是否被擊中,擊中的時候變換顏色。

所以需要使用到Blueprint。

這裏將之前增加的actor變成藍圖,就是add blueprint按鈕完成。

藍圖一般的工作流程用下面的語句描述

When something happens, check whether X, Y, and Z are true, and if so, do this sequence of actions.

有三個默認的事件觸發

Event Begin Play

Event Actor Begin Overlap

Event Tick

這三個事件很容易描述。


7. 現在選擇一個Event hit框。

可以看到有很多其它的框,五邊形的是執行框。

藍圖是下面這個樣子的,射中之後就會變化顏色。

完成之後的效果是下面這樣的,



8. 這個藍圖有很多不完善的地方,比如玩家和這個圓柱接觸的時候也會變成紅色,所以需要修改這個東西。記住我們只是在被子彈擊中之後纔會變化顏色。

完成之後的藍圖長下面這個樣子



9. 通常來說我們的我們的目標是移動的,比如敵人都是移動的,下面要做的事情,就是移動這個射擊目標。

選擇Details --> Transform --> Mobility將Static改成Moveable.

因爲已經生成了藍圖,所以我們也需要在藍圖中進行修改。也是同樣的地方和位置。


10. 首先在藍圖中增加方向和速度兩個變量。

設置相關的參數。

最後的藍圖形式,可以按照這個結構設計出一個左右移動的物體。射擊之後會變成紅色。

前半部分


後半部分

還是挺好玩的。

:)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章