I 的魔力轉圈圈 
  
  想你想到心花怒放 黑夜白天 🎶
  
  
    
      
        |   | 
      
        | 什麼問題讓妳從下午糾結到晚上不睡覺 🤠🤔 | 
    
  
  
  以下截圖出自
  
  
  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個方法看起來的結果是一樣的
 | 
 
 
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
 正常是 Ip Rp Ic Rc
 parent沿著local x軸(紅色)轉-45度
 child沿著 local z軸(藍色)轉-90度
 
 而Ip Ic Rp Rc則是
 把child變換到世界後
 child先沿著local x軸(紅色)轉-45度
 child再沿著local z軸(藍色)轉-90度
 
 extrinsic
 正常是 Rp Ip Rc Ic
 parent沿著世界y軸(綠色)轉-45度
 child沿著parent z軸(藍色)轉-90度
 
 而Rp Rc Ip Ic則是
 把child變換到世界後
 child先沿著世界z軸(藍色)轉-90度
 child再沿著l世界y軸(綠色)轉-45度
 | 
      
    
    
      
        
          |   | 
        
          | 「式1」和「式2」會相等 | 
      
    
    
      
    
    
      Q4:
      這裡Q沒改成I會怎樣
      
      
      
        
      
      
        
          
            |   | 
          
            | 還是可以消掉 但結果和Q2的式子不同
 
 而且出現了未知項
 做為公式也沒辦法使用
 | 
        
      
      
        
      
      
        妳用了幾張信封背面 🤠
      
      
        也只有健保局和國民年金會寄信給我 🙂