Unreal Engine4 蓝图入门
生活随笔
收集整理的這篇文章主要介紹了
Unreal Engine4 蓝图入门
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
????????????????????????????????????????????????????????? 微信公眾號:UE交流學習??? UE4開發群:344602753
???????????? 藍圖是Unreal Engine的特點,用C++編程固然好,但是效率要低很多,主要是國內資料比較少,所以不太容易學習,用藍圖編程可以節省開發成本,我認為藍圖編程也是可以解決問題的,他其實也是一個一個方法進行執行的,可能程序員用這個不太習慣,但是用多了還是挺方便的,對于不懂編程的人來說,思路非常清晰的情況下,最好是有一定的編程基礎,這樣最好!
???????????? 題外話,有個Virtools可視化編程軟件,用的也是類圖,不能用C++直接編程,但是可以用C++編寫模塊,供調用,我個人認為它做的還是挺成功的!
???????????? 首先我新建一個藍圖類,在資源視圖中,右鍵新建就可以!?????????????????????????????????????????? ?????
??????????? 點擊Blueprint后彈出一個父類框,其中有Actor,Pawn,Character,PlayerController等,
? 在All Classes中還有一些不常用的類!在這里我繼承了Actor類,Actor就是最基本的類,也就是每個類都必須有的變換類!類似Unity3d的Transform,每個類都必須有的組件!
???????????
??????????? 在藍圖類中,首先有兩個事件,是必須有的,Eevnt BeginPlay類似于類的初始化事件,
??????????? ActorBeginOverlap是觸發器觸發事件,就是當前物體碰到了其他物體的時候就會觸發!
??????????? Event Tick是每幀都調用的事件!
??????????? 首先像是每個程序都一樣的,打印個HelloWorld!其中箭頭表示流程,程序都是線性流程性的,靠一條線連接到底,不能用一個箭頭連向兩個地方!其中String就是參數,參數可以連接到多個地方的!
???????????
??????????? 然后就可以在屏幕上打印出來Hello World!
??????????? UE在運行的時候默認不顯示鼠標,我寫個代碼,讓顯示個鼠標!
???????????
??????????? 首先是有個藍圖 SET Show Mouse Cursor這個屬性,后面的框可以手動輸入參數,來決定是否顯示鼠標,但是如果Target不能為NULL,否則會編譯不過,也就是說這個方法是屬于某個類的方法,那么這個Target到底是什么類型呢?可以用鼠標放到Target上,會提示你的類型,那么我們就需要獲取當前場景中的人物控制對象,可以用靜態方法Get Player Controller來獲取,然后賦予它就可以!
???????? 再說明下Tick事件,它是每一幀都要執行的,那么我們在游戲程序中有一個參數非常的重要,那就是上一幀運行的時間,我們需要乘以這個參數,來保證游戲的公平性!那么如何獲取呢?可以通過Tick時間的delta來獲取,也可以通過一個藍圖模塊來獲取!
???????????
??????????? 通過BuildString方法,可以拼接兩個字符串,Prefix是前綴,這里填寫的是“Delta”,然后把Delat Senconds的值賦予進來,即可進行拼接的!然后打印出來!
?????????????????????????
???????????????? 我們可以在藍圖中添加一個Cube,但是必須勾選Overlap Event,這樣
????????????????? Event ActorBeginOverlap事件才會被觸發,Collision Presets設置為
????????????????? OverlapOnlyPawn,這樣會接受角色的觸發!
?????????????????
????????????????? 首先碰到了其他物體,那么我們首先進行試著轉換,采用Cast To ThirdPersonCharacter類型,如果轉換失敗,則執行Cast Failed,轉換成功則進行后續的流程,我采用Get Display Name可以打印出這個角色的名稱,然后再刪除方塊自己,類似跑酷中的吃到金幣!模塊為DestroyActor刪除自己!
轉載于:https://www.cnblogs.com/alongu3d/p/5066955.html
總結
以上是生活随笔為你收集整理的Unreal Engine4 蓝图入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第二百六十一、二天 how can I坚
- 下一篇: SVN+post-commit 搭建自动