顯示具有 旋轉 標籤的文章。 顯示所有文章
顯示具有 旋轉 標籤的文章。 顯示所有文章

2024年7月20日 星期六

Retarget的疑惑

的魔力轉圈圈 

想你想到心花怒放 黑夜白天 🎶

什麼問題讓妳從下午糾結到晚上不睡覺 🤠🤔

以下截圖出自

Games105 第4講

Q1:

keyframe的bone存的是「Local 旋轉值I」
還是「和init pose的Local 旋轉差 dR」

上:init bone的local旋轉值I
I for initial

下:keyframe的旋轉資料

「T pose」 VS 「A pose」

把T pose 的旋轉資料,拿給A pose用

如果keyframe的bone存的是「Local 旋轉值I」
就不會有上面的結果

可見keyframe的bone存的是
「和init pose的Local 旋轉差dR」

Q5:

計算旋轉差dR有2種方式
動畫的過程看起來有什麼不同?


想對child沿著它的local x軸(紅色)旋轉90度
用intrinsic對使用者來說比較直觀

對映到的extrinsic就是
繞parent的y軸(綠色)旋轉90度

最終2個方法看起來的結果是一樣的

以下的推導都是用extrinsic


Q2:怎麼處理

直覺就是乘上旋轉差矩陣
補償回來
IB = IB (IA)-1 IA
(這裡的I不是單位矩陣)

這樣就可以繼續使用T pose的旋轉差dR了

「bone A」 VS 「bone B」

R 代表 local 旋轉差dR

Q3:

為什麼和教授推導的結果不1樣?

pi代表父bone
i代表子bone

Q是Global 旋轉差 dQ
R是Local 旋轉差 dR
旋轉矩陣的逆 = 旋轉矩陣的Transpose


原來是包2層 🙂

就像開車
1開始 方向盤向偏右10度
左轉90度 再右轉90度
結果還是向右偏10度 🙂

等1下 
左乘矩陣代表Local旋轉
右乘矩陣代表Global旋轉

只有在2D旋轉的case
上面的黃色(還有水藍)才能互消

3D旋轉的case
無法保證 ITRI = R 🤠
(這裡的I不是單位矩陣)

重新檢視

感覺教授這裡的推導
是在「只有2D旋轉」的前提下進行的


使用這張圖可以驗證上圖的做法在3D不成立

intrinsic
正常是 IRIRc
parent沿著local x軸(紅色)轉-45度
child沿著 local z軸(藍色)轉-90度

而IIRRc則是
把child變換到世界後
child先沿著local x軸(紅色)轉-45度
child再沿著local z軸(藍色)轉-90度

extrinsic
正常是 RIRIc
parent沿著世界y軸(綠色)轉-45度
child沿著parent z軸(藍色)轉-90度

而RRIIc則是
把child變換到世界後
child先沿著世界z軸(藍色)轉-90度
child再沿著l世界y軸(綠色)轉-45度


而使用Q2的式子很容易驗證下圖的

「式1」和「式2」會相等

Q4:

這裡Q沒改成I會怎樣


還是可以消掉
但結果和Q2的式子不同

而且出現了未知項
做為公式也沒辦法使用

妳用了幾張信封背面 🤠
也只有健保局和國民年金會寄信給我 🙂

2023年11月2日 星期四

從旋轉到旋度 上 - 重溫歐拉角

ZYX複合旋轉

X是繞x軸旋轉矩陣
Y是繞y軸旋轉矩陣
Z是繞z軸旋轉矩陣

I是單位矩陣,也是原始的3軸

Global mode

Z Y X I
I先繞世界x軸、再繞世界y軸、再繞世界z軸

Local mode

I Z Y X 
I先繞Local z軸、再繞Local y軸、再繞Loca x軸

不用矩陣 用極座標


出處

Cz = cos(θz)
Sz = sin(θz)

geogebra

繞 Local z軸旋轉

geogebra

繞 Local y軸旋轉

geogebra

繞 Local x軸旋轉

對答案


出處

體力活覺得怎麼樣? 🤠🙃 好卷(Curl)

前戲結束 再來是這次的主題

旋量和旋度


Curl小方塊

2023年9月18日 星期一

置換矩陣 💫 旋轉矩陣

繞Z軸旋轉的幾何解釋

下面5張圖是右手座標






其他旋轉矩陣

  
出處

繞Y軸旋轉怎麼來的

下面這張圖是左手座標

圖Y
把結果Transpose後,就和上圖一樣

懂是懂了
但如何用矩陣來表達圖Y呢?

單位矩陣

是互相垂直的3軸

column-major

row-major

置換矩陣

這裡交換x、z
 
column-major

row-major

交換2次結果不變


 

使用置換矩陣來💫


圖Y

上圖和下圖等價



其他

複合矩陣

2017年5月6日 星期六

Local vs Global

Mr = final  rotaion matrix

Local Mode





Mr = My


Mr = My Mx


Mr = My Mx Mz

Global Mode




Mr =Mz

Mr = Mx Mz


Mr = My Mx Mz

備註:對quaternion來說也是這樣(前乘和後乘具有不同的幾何意義)