最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

UE Animation Note8

2023-09-10 16:34 作者:中專人  | 我要投稿

一、

攝像機震動可以添加為自定義的動畫通知,需要在通知中為playercontroller添加Clent Start Camera Shake節(jié)點并選擇繼承Camera Shake Base Class的藍圖類。

二、關(guān)于ALS_PlayerCameraManager藍圖中CalculateAxisIndependentLag函數(shù)Unrotate節(jié)點的使用:

起初看到這里有些疑惑:有了CurrentLocation和TargetLocation,直接插值不就行了,為什么要先Unrotate再Rotate,這不是有些多余嗎?

其實不然,函數(shù)名稱其實說明了這樣做的原因:Calculate Axis Independent Lag,直譯為軸獨立的延遲計算。好吧,還是有點難懂,但是如果注意到使用Lag Speeds的xyz分量分別對位置的xyz分量進行插值,而不是直接使用一個Lag Speed直接對位置向量插值。那么可以看出,這樣做可以對Lag的xyz上的速度分別控制。

等等,好像偏題了,這和Unrotate、Rotate有什么關(guān)系嗎?

當然有了,不信的話先把Unrotate、Rotate去掉看看效果(后面解釋兩個節(jié)點的作用):

為了直觀效果,將x分量的Lag Speed改成較小值0.5。

效果一:

圖中正前方為世界坐標系下x軸正方向

攝像機在世界坐標系的x軸方向上果然Lag Speed很小(被角色甩在后面),這不對嗎?

當然不對了,請看效果二:

圖中正前方為世界坐標系y軸正方向,左方為世界坐標系x軸正方向

呀!當角色向世界坐標系y軸正方向奔跑時,延遲效果不起作用了,也就是說我們對Lag Speed分量的修改是在世界坐標系上!這就導(dǎo)致了一個問題:玩家的攝像機轉(zhuǎn)向時,玩家仍然希望攝像機的延遲是向前的,而不是向左的(世界坐標系的x軸)。換言之,就是玩家希望對Lag Speed分量的修改是基于攝像機局部坐標系而不是世界坐標系,也就是說如果修改了Lag Speed的x分量,那么無論攝像機如何旋轉(zhuǎn),影響的都是玩家視野前方(攝像機局部坐標系的x軸)。

此時,Unrotate抵消了攝像機的旋轉(zhuǎn)后Rotate再旋轉(zhuǎn)回去恢復(fù)原樣,這樣就等效于從局部空間變換到世界空間,插值后,再變換回局部空間。這樣,在插值的那一步,無論攝像機如何旋轉(zhuǎn),xyz分量都是一致的(旋轉(zhuǎn)效果已抵消)。

數(shù)學(xué)推導(dǎo)很簡單(證個全等三角形就行了,這里就不寫了)。

值得一提的是,可以使用這個原理制作始終指向角色前方(局部坐標系的x軸正方向)的箭頭:

Unrotate的實質(zhì)就是抵消角色在世界下的旋轉(zhuǎn),從而使向量的處理基于角色的局部坐標系。

計算角色在空中時身體是否傾斜

如侵刪,歡迎評論指正。

參考來源:

https://blog.csdn.net/t1370620378/article/details/121540493

UE Animation Note8的評論 (共 條)

分享到微博請遵守國家法律
南宫市| 来安县| 聂荣县| 巴林左旗| 赤城县| 开阳县| 潜江市| 平定县| 迁安市| 社会| 息烽县| 佛坪县| 沧州市| 全椒县| 兰考县| 太和县| 宜章县| 桦川县| 太谷县| 年辖:市辖区| 博罗县| 西吉县| 东光县| 安西县| 太谷县| 明溪县| 珲春市| 延长县| 健康| 常熟市| 秀山| 毕节市| 吉木萨尔县| 汝州市| 奉新县| 临猗县| 锦州市| 邻水| 中西区| 宝鸡市| 平度市|