Hello . 大家好,今天開始分享unreal blueprint的部分,我是木偶心沒。先來分享Unreal的blueprint案例教程之金屬球作用效果一。
首先介紹什麼是blueprint藍圖,就是虛幻引擎的可視化腳本的方法。像unity這種需要代碼來完成的效果,在unreal裏麵可以直接用節點和連接組成的圖形來創建。所以,藍圖是c++函數或者類的一些封裝,更方便一些美術工作者進行操作。
所以接下來我們就通過一個小案例來初步介紹一下unreal的blueprint(BP)
如下是一個被加在藍圖中的金屬小球的作用效果
現在就打開unreal,開始第一個bp製作.
1、創建空白項目
首先打開unreal,然後選擇新建一個blank項目,並且選擇No Starter Content,表示在創建的項目中不會有默認的貼圖材質球等
創建好項目以後打開文件在Content Browser窗口中打開資源文件的窗口
如果沒有Content Browser,可以在工具欄的Windows裏麵調用出來
2、導入fbx
用maya或者max做一個球體,然後保存fbx導入unreal。導入的時候,不要勾選collision,也不要勾選材質球和貼圖,Normal的導入模式為Import Normals and Tangents
3、製作金屬材質球
右鍵創建material,命名為MAT_metal,雙擊打開材質球。
對於金屬來說,首先metallic的值是1.所以用快捷鍵1加鼠標左鍵就可以新建一個一維數值,改變值為1然後輸入到metallic中。同樣還是鍵盤的1加左鍵給roughness輸入一個0.25的值。對於basecolor,用V加鼠標左鍵,添加一個顏色值,命名為colour,然後調節顏色到一個金屬的灰度值以後輸入到basecolor中。然後點擊保存就可以在小窗口裏麵預覽到我們的材質效果。
創建完成以後把材質賦給剛才導入引擎的那個ball,然後我們就可以看到這個ball已經不是一個普通的ball了,是擁有了我們金屬材質的一個ball了。
4、添加物理效果
如果要讓這個不一般的ball擁有下落並且彈出去的效果,就需要給這個ball加物理效果了。
首先加一個collision
因為當時我們導入ball的時候是沒有加碰撞的,所以需要現場生成一個collision。雙擊ball,打開ball,Collision->AddSphere Simplified Collision
預覽裏麵顯示的高亮線就是這個ball的collision。
切換到場景中選中ball,屬性麵板中勾選Simulate Physics(回放可以發現在沒有collision的時候這個選項是灰色不可勾選狀態)
勾選完成以後,點擊paly,就可以看到ball已經開始有下落並且微彈的效果了
但是如果我們要來控製這個ball的其他運動屬性,比如說方向大小,就需要在blueprint裏麵進行製作。
5、blueprint創建
右鍵新建一個blueprint class,選擇Actor模式,給名BP_ball
這樣,我們就可以把這個call的所有邏輯都加在這個blueprint裏麵
雙擊這個bp,我們可以看到裏麵view窗口中有一個ball,但是這不是我們加進來的那個ball,那是一個默認的無法選中的ball,隻是一個DefaultSceneRoot。也就是如果把這個藍圖拉到場景中,然後play,你並不會看到任何東西,因為現在為止他還是一個空bp。(注意play完了以後一定要點stop結束掉預覽)
現在我們來替換掉這個bp裏麵的default ball,點擊components麵板裏麵的+Add Component,然後選擇static mesh加入一個靜態網格,給名ball。
但是現在的Viewport窗口裏麵還是有默認ball,所以我們需要在component裏麵把ball拖到DefaultSceneRoot裏麵去覆蓋掉,就可以看到場景裏麵沒有任何ball了,空空如也
選中這個ball,然後再右側屬性版麵裏麵加載我們外麵的mesh
這時候我們的不一般的金屬ball已經被加載進來了,現在就可以在這個bp裏麵對其添加任何操作了
同樣勾選屬性Simulate Physics,保存以後直接把這個bp拉到場景中,然後play就可以得到與我們之前一樣的下落反彈效果。(左邊是bp)
6、Event Graph
雙擊打開後的blueprint裏麵有Construction Script和Event Graph兩個可以添加節點的地方,在都可以添加功能的前提下,他們有什麼區別呢?
Construction script裏麵添加的功能,在bp拉到場景裏麵就可以運行;而event graph裏麵的需要play以後或者觸發了以後才會有效果。
所以我們現在的操作應該是在Event Graph裏麵的。
首先右鍵給增加一個Add impulse節點,表示給ball增加一個衝量。
默認的target會有一個輸入點ball因為我們給這個bp添加的作用actor就是這個ball。把一個任何數值輸入到這個add impulse中,然後調節方向,就可以讓ball向某個地方運動。比如我們現在在左邊my Blueprint裏麵添加一個變量Variables,命名為default speed。
選中創建好的變量,右邊屬性麵板裏麵調節變量的類型為vector,表示他是一個帶方向的向量。
然後點擊compile,編譯一下整個bp,就可以看到default speed已經有可以控製的默認參數,調節y軸值為-2000,這樣就可以沿著y軸負方向運動。
鼠標左鍵拖動我們的變量到event graph中,鬆開選擇get,表示獲取變量值
將event tick(表示什麼事件開始的時間,每一幀都會觸發eventtick)的delta seconds(當前幀花費的時間)和我們拖入進去的default speed相乘。由於時間類型是float型,所以選擇vector乘以float
接著講相乘的結果連接到add impulse的impulse屬性中,event tick觸發事件連入到add impulse上。並且勾選vel change,可避免一些力波動影響。
然後點擊compile和save,回到場景裏麵,點擊play重新運行進入遊戲,就能夠實現出我們在開頭看到的小球效果,從y軸負方向飛出去,但是過程中又會受重力影響,所以有一個拋物線運動。
今天的入門內容暫時完結,蟹蟹圍觀!
來源:Thepoly公眾號
熱門課程
專業講師指導 快速擺脫技能困惑相關文章
多種教程 總有一個適合自己專業問題谘詢
你擔心的問題,火星幫你解答這篇文章將詳細探索學習網頁設計需要多長時間以及在火星時代教育可以如何學習和領悟這項技能。
深入探討美工專業的學習周期以及有效的學習路徑,專業的指導來自火星時代教育,幫助你理解化學習美工所需的時間
本文從UI設計所需技能,學習方法,以及學習周期三個角度為大家解析學習UI設計需要多長時間。
尋找學習遊戲建模的理想學校,為自己的職業生涯做準備。火星時代教育,全方位的遊戲建模課程,專業的講師指導,提供你需要的技能和知識。
探索學習插畫的核心要求和技巧,以及火星時代教育如何幫助你達成藝術夢想
本文主要介紹如何通過選擇專業的影視動畫場景培訓機構,挖掘你的創新潛能,為未來職業做好準備。同時,我們也將介紹火星時代教育的專業......
1. 打開微信掃一掃,掃描左側二維碼
2. 添加老師微信,馬上領取免費課程資源
同學您好!