UE4:spline模型生成並自主控制。
阿新 • • 發佈:2019-02-11
說明:上週搞的專案是鐵路的生成和檢修,包工頭要求要能生成鐵路,並且在執行過程中可以隨意控制鐵路的屬性。比如,在任意距離擡高任意距離鐵路。其實,生成好生成,關鍵點在於後面的控制鐵路的屬性。剛好虛幻商城裡面有一個牛逼的鐵路系統,我光翻譯他的藍圖就翻譯了三天,三天下來,一臉矇蔽。最後把他的鐵軌生成系統給摘了出來,然後又簡化了很多很多,所以,這篇文章裡面介紹的功能不到的原功能的1%。有興趣的朋友可以去瞅瞅官方商城裡面的那個屌爆天的小火車系統。我這個只是在原版的基礎上改巴改巴鼓搗出來的,屬於低配版的低配版。
1.思路:
建構函式裡面寫好鐵路的生成,updatemesh函式更新模型,鍵盤事件新增控制點-splinepoint,tick事件實時呼叫updatemesh函式。就這樣一個簡單邏輯。
2.鐵路生成:
鐵路的生成的原理如圖2.1所示:圖2.1 這是說明一下,為什麼限制切線呢,當spline很長的時候,同時點很少的話,會造成過長的切線,同時會使模型發生嚴重的破損。當新增的了切線限制,會有效的避免模型發生破損。
3.更新鐵路函式:
圖 3.1 更新模型的函式裡面,需要新增一些本地變數來進行控制。
4.手動新增splinepoint
這裡用了addsplinepointatindex節點來給spline新增指定的point。然後鍵控剛才的point,tick事件實時監測到spline的變化,並把這種變化反饋到update的函式上,更新模型。 總結:我這裡只簡單的記錄下製作思路,具體的內容可能需要大量的篇幅去敘述。有需求的朋友可以自己按照這個思路研究一下。不懂的地方咱們在共同交流一下。 QQ:251221274