un4 unreal4 創建路徑 曲線 管道 Spline組件 使用方法

想創建自定義曲線,自定義的管道,路徑,或者任何跟隨路徑的模型

找了半天,發現個 Spline 和 SplineMesh 這兩個組件 

找來找去沒什麼資料。。。

最後在油管找到個視頻,抱歉無法搬運

在上面隨便搜個spline unreal都非常多的,因爲官方有個示例

我就寫個使用說明吧

首先的首先,創建一個actor藍圖吧

然後創建個scene的root節點吧

之後添加一個 Spline 組件 (注意不是Spline Mesh)

這裏說一下 Spline 是樣條曲線的承載器,用它來創建點,他會幫你連成曲線

在點上覆制刪除,或者在線上直接添加都是可以的

這裏有一點提示一下,如果你要動態生成點的話,你肯定要清除自動創建的兩個點

然後你會發現無法刪除最後一個 他灰了

木得關係我們可以用api刪除的,放心,後面會說

這裏說一下另外一個組件 Spline Mesh

這個是用於繪製曲線的網格的東西,他是無法單獨使用的,需要依附Spline裏面的點屬性的

(當然非要槓的話是可以用,就是麻煩)

下面直接按流程來說一下

1.將你曲線的點循環添加至曲線(目前沒發現直接添加數組的方法,時間短就沒有仔細折騰了,歡迎留言)

切記切記 是 AddSplinePoint 一定要看清楚了 我們是要在曲線上添加點

也可以根據序號添加

選項不用動就行了

循環添加一下,這裏我寫了個函數,參數points是vector的數組

這樣就把你需要的點添加進去了,下面需要循環這個曲線工具的點

獲取到Spline工具內點的長度減去2設置循環(倒騰數組而已,你要想深究可以測試一下)

循環內添加SplineMesh組件,是的你想的沒錯,這個就是每兩個點中間的曲線mesh

每兩個點中間都要創建這個以連接曲線

首先我們添加SplineMesh

左鍵單擊可以看到這個組件的細節

需要設置一下mesh來方便顯示你的管道 路徑之類的

這裏一定要注意紅線位置,是代表mesh向前的軸 forwardAxis

如果你懂模型的話就是擠壓軸的方向

找個圓柱試一下你就知道了

不過這個路徑啊管道啊最重要的就是模型了,這裏需要花功夫找合適的模型及調試

添加完這個SplineMesh後需要設置這個模型的開始結束位置及正切值(Tangent)

這個值就是從Spline組件裏面獲得的

使用點的index就可以拿到了

這裏我們獲取到循環當前點和下一個點的數據設置進去就行了

如果你在這裏直接創建就會遇到我說他還有個點刪不掉的問題,只需要調用一下api刪掉就行了

完整的藍圖上

咱們在關卡藍圖簡單調用一下

嗯木得問題

這裏說明下,縮放的結果不是想的那樣。。。所以,模型那裏確實需要時間調試的

Spline也具備直接設置的api

裏面還有非常多功能,有需要就仔細折騰吧

如果需要動態生成,別忘記刪除原來的 SplineMesh 組件

這個組件也可以做路徑尋路,可以按照你畫的固定路徑來,因爲能獲取所有頂點嘛。。。

可以擴展的功能還是十分多的

希望幫到大家~~~

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