研究主題:
投射物的拋物線動線計算
研究目的:
在已知「發射位置」和「目標終點」以及「投射動量」的狀態下,取得「發射角度」
參考資料:
Unreal 程式碼分享:
研究小結:
其實這次的研究有很多問題,例如空氣阻力、以及非水平狀態下的最大投擲距離的投擲角度等,都是這次研究忽略的東西,在真實運作上會有些微的違和感和不正確
但對我目前大部分的狀況是適用就是了,而且判定流程上基本是沒有問題的,只是需要多幾項算式去完善判定細節,但我目前用不到那麼多,而且為了效能的問題,現在先這樣囉~
之後再慢慢補完。
至於這個拋物線的中間過程畫線,Unreal 其實有一個叫做 PredictProjectilePath 的相關 Function 可以使用了。
雖然他只是跑個 For 迴圈把起點往後的路徑提前做運算算出來而已.... 但也算堪用了啦,不過看懂後其實自己寫效率會更好一點點。
(其實就只是 For 迴圈去把 位置 + 向量 * 動量 + 重力加速度 取得下一個位置,然後把前後兩個位置做一次 Raycast .... 只是他寫很酷而已 (?))
2020.06.18 補充:
修正了一下關於平拋與高拋的判定條件的問題,這因為牽涉到起點與終點的高低差問題,以及路徑上的障礙物問題,所以該怎麼選擇,應該要根據判定的詳細程度而定
之前的方法有點瞎猜,現在稍微修正一下「請根據場地複雜度自行添加條件吧!」
(不負責任丟包)