---
# System prepended metadata

title: Blender 骨架

---

Blender 骨架
===

[toc]
## 基本操作
### 模式切換
* 骨架有edit/pose mode
    * object mode:
        新增骨架(armature) 
    * edit mode:
        * 新增骨頭(bone)
        * 連接骨頭
        * 建立骨頭父子關係
    * pose mode:
        * 與物件榜定
        * 約束器操作
        * 執行骨架操作(位移/旋轉)
* 切換object/edit mode: tab
* 切換object/pose mode: ctrl+tab
* 按.選擇想要物件旋轉的中心點
![](https://i.imgur.com/7PMLGpn.png)
* item的rotation可以顯示轉多少圈
![](https://i.imgur.com/U3QVS0B.png)
### 骨架操作
* 新增骨架：shift+A選amature
![](https://i.imgur.com/9wym5PH.png)
* 新增骨頭：在骨架edit mode下shift+A會在游標出現新的骨頭
* 新增連接骨頭：點選骨頭頂端按E
![](https://i.imgur.com/EOUQT9N.png)
* 設定父子關係：ctrl+P(最後選的骨頭是父，其於是子)
    * keep offset：跟父骨頭會有距離
    * connected：直接接在父骨頭的頂端 
![](https://i.imgur.com/UqN70fo.png)
* 解除父子關係：alt+P
![](https://i.imgur.com/iqBWa89.png)
* 取消lock object mode：在pose mode下可以選擇物件後shift選骨架
![](https://i.imgur.com/VzOSs0H.png)
* 物件榜定骨架：先選物件shift選骨架(pose mode)後ctrl+P
![](https://i.imgur.com/dnLPVog.png)
* 骨架不要被物件擋住：右側工序欄勾選in Front
![](https://i.imgur.com/X4TZIRB.png)
* 榜定骨架使用with automatic weight進入weight paint模式下可以檢視權重分配狀況
![](https://i.imgur.com/E0jrCTl.png)
* 修改權重：weight paint下按N叫出右方工具欄
![](https://i.imgur.com/NHVhh7R.png)
* 鏡像權重
    1. 複製權重
    ![](https://i.imgur.com/UMGxZUb.png)
    1. 鏡射
    ![](https://i.imgur.com/7nbBFfL.png)
* 游標控制：shift+S
* 鏡射骨架
    1. 圈選完一側的骨架再命名
    ![](https://i.imgur.com/mA2HpDU.png)
    1. 執行對稱
    ![](https://i.imgur.com/n9Xg00q.png)
     
### 骨架空間
* 骨架在pose mode下的local space軸向
    * Z軸 
    ![](https://i.imgur.com/cHNgLMD.png)
    * Y軸
    ![](https://i.imgur.com/suZxQHV.png)
    * X軸
    ![](https://i.imgur.com/V6R3FNt.png)
### 外掛功能
* copy constraint
![](https://i.imgur.com/EzR5GZT.png)
### 自訂控制骨頭外型
* 新增plane
![](https://i.imgur.com/gXW3Iix.png)
* 編輯模式delete face
![](https://i.imgur.com/5d8RAsM.png)
* 編輯形狀
* 骨頭點選custom shape
![](https://i.imgur.com/nt0KiKh.png)
### 材質套用
* 新增材質兩次，第一次的材質會套用到整個物件，第二個材質才可以選擇要的區域
![](https://i.imgur.com/hbFoDah.png)
### 常用操作
* 鏡像複製
    1. 選擇物件後shift+D複製
    2. s+x/y/z鏡像指定軸
    3. ctrl+A套用rotation&scale
    4. 編輯模式下全選物件後shift+N重新計算normal
* 把物件獨立出來
    1. 點選p，選擇selection
    ![](https://i.imgur.com/Gpd4Hab.png)



## IK Bone
1. 選擇物件shift選骨架(pose mode)後ctrl+P選bone
1. 控制骨架先解除父子關係
2. 選擇控制骨頭shift選前一個骨頭後shift+i
![](https://i.imgur.com/chCceaX.png)
1. 修改控制骨頭數量：chain length
![](https://i.imgur.com/I1n4smW.png)

* 設定ik bone的延伸影響：ik strectch
![](https://i.imgur.com/WVQsZYL.png)
* 設定pole target讓IK bone彎曲較自然
![](https://i.imgur.com/SWoVo8J.png) ![](https://i.imgur.com/qmQ5k2W.png)



## Bendy bone
移動時有柔軟的效果
1. 建立三個骨頭，中間的要比較長(bendy bone)
![](https://i.imgur.com/W2whsDo.png)
1. 將中間骨頭細分成多段
![](https://i.imgur.com/I63h9mv.png)
1. 切換成B-bone可以看到骨頭被細分的狀態
![](https://i.imgur.com/LtusHnS.png) ![](https://i.imgur.com/tk0TWUn.png)
1. 將端點控制骨架取消父子關係
2. 新增bendy bone的骨架約束器，使用stretch to，目標選擇控制骨架
![](https://i.imgur.com/Sdp4OIi.png)
1. 設定起始結束把手(absolute)
    * 起始：另一個端點骨頭
    * 結束：控制的骨頭
![](https://i.imgur.com/ZV93t2L.png)
1. 最後將物件榜定骨架，使用自動權重分配

## Shape key
物件形狀改變
1. 點選物件後新增shape key，點二次後才會出現key
![](https://i.imgur.com/H1C3Sve.png)
1. 編輯物件的形狀後，value=1時為最後編輯過的形狀，改變value可以看到物件變化過程
2. 可新增多組key
1. 也可用於變更曲線外型
* 鏡像功能
    1. 複製shape key，新增時用不到的key，value要歸0
    ![](https://i.imgur.com/MWzKZyC.png)
    1. 鏡射
    ![](https://i.imgur.com/FwTOPxd.png)
    

## 約束器
### Copy Location/Rotation/Scale
1. 選擇copy location/rotation/scale
![](https://i.imgur.com/ixj08zT.png)
1. target點選要跟隨的骨架，owner是自己，座標系選擇local space
2. 如果需要用target的父骨頭作連動時，target座標要選擇local space with parent
### Limit Distance
1. 選擇limit location/rotation/scale
2. distance填入兩個骨頭的限制距離
![](https://i.imgur.com/c1BEwJa.png)
1. 當移動owner時會被distance限制住
### Transformation
* 骨架帶著其他骨架做不同步運動，例如要用控制骨頭移動來帶動被控制骨頭的轉動
1. 設定target(控制骨架)的運動方式，這邊選擇target x軸移動
![](https://i.imgur.com/d1THcWJ.png)
1. 設定owner(被控制骨架)的運動方式，這邊選擇owner z軸移動，要映射到target的x
![](https://i.imgur.com/dBUXGEu.png)
1. 勾選extrapolate可以一直循環
2. 若有跟其他骨頭設定父子關係時，要選with parent
![](https://i.imgur.com/c81nWrh.png)

### Clamp to
* 讓骨架跟著曲線移動
![](https://i.imgur.com/oeLOKwH.png)
### Stretch to
* 讓骨頭以延伸的方式追蹤目標
* 用於Bendy bone
### Damped Track
* 物件朝著指定目標方向追蹤
![](https://i.imgur.com/O4cNBqn.png) ![](https://i.imgur.com/fgn7CCn.png)
### Armature
不同骨架之間的榜定
1. 選擇要榜的骨架新增armature約束器
2. 指定要榜到哪個骨架
![](https://i.imgur.com/05WlvQR.png)
### Floor
設定骨頭的地板下限
1. 選擇要限制的骨頭新增Floor約束器
2. 指定地板的骨頭，在選擇要限制的軸向，這樣骨頭就不會超過地板骨頭的軸向
![](https://i.imgur.com/9lri52n.png)
1. 也可操作地板的骨頭，可將帶動被限制的骨頭
2. offset可以修改地板的距離
![](https://i.imgur.com/49HVyXJ.png)
### Follow path
讓骨頭跟著路徑移動
1. 新增曲線
2. 新增follow path約束器，並指定路徑後按animate path
![](https://i.imgur.com/BK7P55n.png)
1. 搭配曲線的影格設定調整速度
![](https://i.imgur.com/vovp1pA.png)
### Shrinkmap
在物件表面移動
1. 新增物件
2. 新增shrinkmap約束器，指定到物件
![](https://i.imgur.com/Jznv2gt.png)
1. 可變更snap mode來決定移動模式
### Pivot
指定骨架對某個物件為旋轉中心轉動
![](https://i.imgur.com/QTqBvI9.png)
### Action
以動畫方式完成骨架設定
1. 開啟Dope sheet點選第一影格
![](https://i.imgur.com/aUㄧ4NQap.png)
3. 在骨架的pose mode上點i插入影格，通常直接選location/rotation/scale
![](https://i.imgur.com/lKxa2ln.png)
1. 在指定的影格上編輯骨架的方位並插入影格
![](https://i.imgur.com/6rH2RCE.png)
1. 拖曳dope sheet上的影格軸就會有動畫效果
2. 選擇action editor後可以看到剛編輯的動畫名稱
![](https://i.imgur.com/KGVqIQA.png)
1. 新增一骨頭用來啟動剛設定的動畫
1. 選擇剛有編輯動畫的骨頭新增action約束器
2. targe選擇控制骨頭，並設定控制模式
![](https://i.imgur.com/tNSffPF.png)
1. 以上面設定來看當控制骨頭研x軸方向移動3單位，動畫骨頭會播放1~20影格的動作
2. 操作前將影格移回1，再刪除，這樣在播動畫時才不會影響，這個並不歸類在動畫中，只是將動畫的動作拿來做骨架
### Spline IK
配合曲線使用
1. 新增曲線
2. 曲線編輯模式下設定控制類型
![](https://i.imgur.com/jYiYu9P.png)
1. 設定頂點對齊
![](https://i.imgur.com/hTLz4MQ.png)
1. 將曲線貼在骨架上
![](https://i.imgur.com/JtN02wO.png)
1. 最後端點的骨頭新增spline ik約束器
![](https://i.imgur.com/WmAhXez.png)
1. 指定曲線後調整控制骨架數量:chain length
2. 將每個骨頭端點拉出一個控制骨頭，並取消父子關係
![](https://i.imgur.com/QXyp4bj.png)
1. 曲線綁定骨頭：
    1. 選擇骨頭(pose mode)
    2. shift選取線在tab進入edit mode
    3. 點選曲線端點ctrl+H
    ![](https://i.imgur.com/RD9r3cS.png)
    1. 選擇hook to selected object bone
    2. 依序將其他曲線端點與骨頭榜定
    3. 移動骨頭會帶動曲線
    4. 自動權重之前先將這些控制骨頭取消Deform，選取多個骨頭在Deform按shift+alt點選    
1. 點選物件後shift骨架後ctrl+P選automatic weight
![](https://i.imgur.com/nmptXbD.png)
### 約束器控制順序
從上到下開示
![](https://i.imgur.com/wqeNMwj.png)

## 驅動器控制
* 驅動器編輯骨頭運動
可在任何數值變動的欄位增加驅動器控制
1. 在數值欄位右鍵add driver
2. object點選骨頭
![](https://i.imgur.com/Ami4ihK.png)
* 材質設定
* 新增客製化屬性
    1. 在骨頭設定最下面的custom properties新增屬性
    ![](https://i.imgur.com/VOePVkp.png)
    1. 在骨頭item的prop欄位上右鍵
    ![](https://i.imgur.com/qyEwe1k.png)
    1. 點選copy data path    
    ![](https://i.imgur.com/pBoCuwu.png)
    1. 在驅動器編輯欄位的下拉選單點選signal property並把剛複製的路徑貼上
    ![](https://i.imgur.com/3Psf5P0.png)
    1. 可以調整prop的值來控制對應的 
* 將driver套用到不同屬性的數值
    1. 客製屬性右鍵選copy as new driver    
    ![](https://i.imgur.com/ong4ozj.png)
    1. 在要控制的屬性數值點選paste driver
    ![](https://i.imgur.com/0yY3Fja.png)
     

## 實例說明
### 動物
* 身體和軀幹交接處使用自動權重會有問題，連接處的權重會被分配到四肢
![](https://i.imgur.com/wgIne9F.png) ![](https://i.imgur.com/kNw7Zrp.png)

先將四肢連接身體的骨頭拉長，在細分後，從末端額外多拉一節骨頭出來
![](https://i.imgur.com/6omD1QV.png)
* 動物的軀幹可用bendy bone，或是Z字型骨架
![](https://i.imgur.com/wqHIpuD.png)
* IK bone使用時要注意的地方，如果希望骨架彎曲的方向照我們希望的，那初始角度要給，不然有時會不同的方向彎曲
![](https://i.imgur.com/T5Z9xXA.png)
或是在那個關節後的骨頭在設定一個IK bone
![](https://i.imgur.com/ATrYUJ3.png)
* 自行分配權重
    1. 在物件編輯模式下選擇控制區域
    ![](https://i.imgur.com/pZR1SW9.png)
    1. 進入weight paint勾選遮罩
    ![](https://i.imgur.com/o1jzapQ.png)
    1. 點擊N選擇權重數值，將遮罩部份塗滿，紅色代表控制權愈高
    ![](https://i.imgur.com/0RRGZNE.png)
* 直接分配選取的區域權重
在物件編輯模式下，在view group選擇到控制的骨頭，將圈選的區域直接assign，記得也要處理不想控制的區域
![](https://i.imgur.com/PllaYSf.png)
### 手
* 使用spine IK + IK bone組合，藉由IK來控制spline IK
* 將spline IK的控制骨頭跟IK的骨頭建立父子關係
![](https://i.imgur.com/FkD1X4e.png)
### 人體
* 軀幹用三個骨頭構成，須稍微有些弧度
![](https://i.imgur.com/lt8mEL8.png)
* 手臂
![](https://i.imgur.com/vc9RN7r.png)
* 手掌
![](https://i.imgur.com/P2J6187.png)
* 腿
![](https://i.imgur.com/jYeuRSQ.png) ![](https://i.imgur.com/lfm7i8b.png)
* 手指控制：從手指與手掌連接處拉出骨頭，其餘手指骨頭copy rotation控制骨頭的角度，手指骨頭mix選offset
![](https://i.imgur.com/FojNSp0.png) ![](https://i.imgur.com/kVIZewv.png)
* 腳掌
![](https://i.imgur.com/TdsNwIf.png) ![](https://i.imgur.com/gQ16jx9.png)
* 胸口
![](https://i.imgur.com/1fjagVK.png)
### 人臉
* 使用shape key控制+驅動器控制臉部肌肉
    1. 新增shape key來控制臉部的肌肉位置
    2. 新增控制骨頭
    3. shape key add driver，先將骨頭移至最後的位置
    ![](https://i.imgur.com/EIohilt.png)
    5. var調整到接近1的值
### 工程車
* 履帶
可用array修改器方式複製單一元件，再用曲線修改器讓物件在指定路徑上排列
![](https://i.imgur.com/PHA4W8C.png)
* 吊鉤
    1. 選擇物件再選曲線進入edit mode選端點
    2. ctrl+H：hook to selected object
    ![](https://i.imgur.com/tfZbr2k.png)

## 快捷鍵
* ctrl E: 呼叫edge的操作
* ctrl L: 材質鍊結
* U: UV功能鍵
![](https://i.imgur.com/8Rk7ynx.png)
* ctrl B: 選取渲染區域
* 0: 攝影機視角
* x: 刪除功能
![](https://i.imgur.com/1ltFfvN.png)
* u: UV紋理設定
![](https://i.imgur.com/p2qSeUa.png)
* 空白鍵改成search
![](https://i.imgur.com/SaR6Iux.png)
* 設定物件中心
![](https://i.imgur.com/NH1vTId.png)
* ctrl J: 將選取的物件合成一物件
* ctrl RMB: 新增頂點 
* shift alt LMB: 選取一串點
* shift E: 邊緣銳利
* shift ctrl B: 布林運算
* s x/y/z 0：對齊軸

## 攝影機設定
* 調整景深
![](https://i.imgur.com/VrFWtQL.png)


## 編輯模式
### 面編輯
* i: 插入面
![](https://i.imgur.com/K9E1gWf.png)
* ctrf+F
    * poker face 
    ![](https://i.imgur.com/z12h1uZ.png)
    * fill grid
    ![](https://i.imgur.com/SlXRjLo.png)

* shade smooth
![](https://i.imgur.com/wFy1RyQ.png)
* edge splite: 平滑破碎區域
![](https://i.imgur.com/RLLakzK.png)
![](https://i.imgur.com/7F3hzjb.png) ![](https://i.imgur.com/dg4gwIJ.png)
* 將面推平
![](https://i.imgur.com/xa7oxLM.png)
![](https://i.imgur.com/LP54Auy.png) ![](https://i.imgur.com/cz2RiiR.png)

### 點編輯
* f: 連接點
* shift alt LMB: loop select
* 顯示長度
![](https://i.imgur.com/uc7AtiI.png)
* 錨點設定
![](https://i.imgur.com/GUbN6nf.png)
### 線編輯
* shift+alt點線段：選擇loop
* 網格填滿
![](https://i.imgur.com/9zcKYG3.png)



## 材質渲染
### 紋理
1. 新增材質屬性
2. shading新增image texture
![](https://i.imgur.com/ICki3MB.png)
3. 投影UV
![](https://i.imgur.com/EQy8TEi.png)
4. 縮放UV符合大小
![](https://i.imgur.com/r9LaMT5.png)
5. ctrl L調整UV map位置，有可能會跑掉
6. 調整後將物件scale設定成1
![](https://i.imgur.com/VEsM0pB.png)

### 著色器
* 開啟shading編輯視窗(上方工具列選擇shading)
* SDF著色器可定義紋理外觀
![](https://i.imgur.com/6wggcQ1.png)
* 圖片紋理
    1. shift+A
    ![](https://i.imgur.com/f9s5lKD.png)
    2. 將紋理賦予物件
    ![](https://i.imgur.com/neuLC2X.png)
    3. 可以用於粗糙和法向量效果設定
* UV編輯視窗
![](https://i.imgur.com/vYjL7aK.png)
* 使用粗糙面要把color space改為non-color
![](https://i.imgur.com/t3Ev5W0.png) ![](https://i.imgur.com/Mk8zzT0.png)
* 混合兩種shader: Mix shade
![](https://i.imgur.com/xVjotWf.png)
* 法線材值設定
![](https://i.imgur.com/jZeb1WK.png)


## 物件修改器
* Decimate: 降低物件的面數
![](https://i.imgur.com/a5Csgvu.png)
* Bevel:斜角
可選擇用weight/angle方式
![](https://i.imgur.com/SOLh2Lb.png)




## 參考網站
* 紋理：plyhaven.com
* 技巧：https://kaicho-cg.com/geometry-node-master-serie/
* geometry node: https://www.youtube.com/watch?v=WOccqv3ymYw
* 課程：https://www.wingfox.com/c/8927_79782_24897
WFX15














