# 如何透過 Blender 學習 3D 動畫設計

## 前言

我寫這篇文章的目的，是為了讓初學者可以快速的進入 Blender 動畫領域。

我是個程式設計者，在 2008 年開始透過 Blender 2.47 版學習動畫設計，我學習得很慢，因為一路上並沒有人教我，或者與我一起學習。

一開始學習 Blender 的時候，我仍然希望找到好的書籍幫助我學習，但是後來我發現自己錯了。

因為，學習動畫最好的資源，並不是書籍，而是教學影片。如果您嘗試透過書籍來學習 Blender ，您應該會與我當初一樣，落入「學習緩慢、格格不入」的窘境。因此，本文只是一堆教學影片的導引，重點在教學影片，而非文章本身。

## 安裝

Blender 很小，很容易安裝，您可以從下列網址找到您想安裝的版本。

* <http://www.blender.org/download/get-blender/>

以下是筆者對 Blender 所進行的基本介紹，您可以從中了解到 Blender 的歷史與其安裝的步驟。

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
|  下載與安裝 | [ppt](1_BlenderInstall.ppt) |  <http://youtu.be/jrkVbbhMzrM> | |
| Blender 的歷史 |  | <http://youtu.be/iCyVoBeGwE4> | |

註記：由於 Blender 在 2.5 版開始有了非常重大的改變，因此建議大家不要在使用 2.5 之前的版本來學習 Blender，最好使用最新版本。

## 開始使用

當您安裝好 Blender 之後，請啟動它試試看，您會看到一個很棒的介面，但是這個介面對於陌生的使用者而言卻是個很大的瓶頸。

在 Blender 的世界中，您必須善用滑鼠與快捷鍵，您最好使用 3 鍵式的滑鼠 (兩鍵式的將會很難用，建議不要用)，這種滑鼠的中鍵通常是滾輪。

您可以用滾輪縮放畫面，或者壓住滾輪拖拉以便轉動角度，或者按住 Shift 同時移動滾輪進行平移動作。

接著建議您可以按照下列順序，觀看「簡報與影片」，以便學習基本的 Blender 操作。

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| 世界的操作 | [ppt](1_BlenderWorldOp.ppt) | <http://youtu.be/s8x9xGq5Rr8> | |
| 物件的新增 | [ppt](1_BlenderObjAdd.ppt) | <http://youtu.be/45b1EwdbJbc> | |
| 視角切換 | [ppt](1_BlenderView.ppt) | <http://youtu.be/6C2XE4d-g18> | |
| 平移、旋轉、縮放 | [ppt](1_BlenderGSR.ppt) | <http://youtu.be/1QZe7cFlxgw> | |
| 視窗的切割 | [ppt](1_BlenderWinCut.ppt) | <http://youtu.be/BVetX9MlO4U> | |
| 做一個雪人 | [ppt](1_BlenderShowMan.ppt) | <http://youtu.be/WOrID2td-hs> <br/> <http://youtu.be/XmbnEI8hp9o> |  |
| 做一個木偶人 | [ppt](1_BlenderWoodMan.ppt) | <http://youtu.be/4JgjNJbU4Ic> |  |

## 編輯模式

一但您會了 Blender 的基本操作之後，就可以開始建立自己想要的形狀，而非使用拼積木的方式去建構模型。

要建立自己想要的形狀，必須進入編輯模式 (Edit Mode)，對某些物鍵進行改造的動作。

筆者最喜歡的編輯方法是「擠出法」，用快速鍵 E 去擠出所想要物體的形狀，您可以從以下影片當中學習到有關編輯模式的基本操作。

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
|  編輯模式 | [ppt](2_BlenderEdit.ppt) | <http://youtu.be/EN2S28hJKk8> | |
|  編輯一間房子 |  | <http://youtu.be/iZ5xNTMVf8k> |  [模型](house.blend) |
| 擠出法 | [ppt](2_BlenderExtrude.ppt) | <http://youtu.be/WeD9G6I5aI4> | [模型](extrude.blend) |
| 製作杯子 | | <http://youtu.be/imqnepDnUmE> |  |
| 曲面編輯 | [ppt](2_BlenderProportional.ppt) | <http://youtu.be/IbGhXtXMutc> | |
| 曲面：地形編輯 |  | <http://youtu.be/cY3lYIdKVHE> | [模型](Landscape.blend) |
| 布林建模 | [ppt](2_BlenderBoolean.ppt) | <http://youtu.be/JWiwOXO2IRk> | [模型](boolean.blend) |
| 布林：有窗戶的房子 |  | <http://youtu.be/95bpZnHRaFA | [模型]( BooleanHouse.blend) |
| 分割與合併 | [ppt](2_BlenderCutMerge.ppt) | <http://youtu.be/eweE19Jtlrk> |  [模型](CutMerge.blend) |
| 重新多邊形化 (Remesh) |  | <http://youtu.be/w3g9rSr2Fpw> |  |

## 材質與花紋

然而，一個好的 3D 模型不能只是形狀很像，還要有逼真的顏色、材質與花紋，才能讓模型呈現出適當的美感，以下關於 Blender 材質花紋設定的教學影片。

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| 材質貼圖 (磚牆) | [ppt](3_BlenderBrickCube.ppt) | <http://youtu.be/2B2xR19iE9k> | [模型](BrickCube.zip)  <br/> [模型](BrickWall.zip) |
| 材質索引 (彩色方塊) | [ppt](3_BlenderMaterialIndices.ppt)  | <http://youtu.be/xuNTSVdqjWg> | [模型](ColorCube.blend)  <br/> [模型](StarColorCube.blend) |
| 玻璃材質 (杯子) | [ppt](3_BlenderGlassCup.ppt) |  | [模型](GlassCup.zip) |
| 凹凸花紋 | [ppt](3_BlenderNormalTexture.ppt) | <http://youtu.be/YrdOoUetTT8> | [模型](NormalTexture.blend) |
| 凹凸表面 (殞石) | [ppt](2_BlenderStone.ppt) |  <http://youtu.be/jUgIWrTQXOY> |  [模型](Stone.zip)  <br/> [模型](MyAsteroid.zip)  <br/> [模型](rock.zip) |
| UV 貼圖 | [ppt](3_BlenderUVMap.ppt) |  <http://youtu.be/sta4iqjk5f4> |  [模型](UVMap.zip) |
| UV 貼圖 - 骰子 |  |  <http://youtu.be/TcSRvsxWFTc> | [模型](UVDice.blend) |
| UV 貼圖 - 對稱球 |  |  <http://youtu.be/G62p_CPYez4> |   |
| UV 貼圖 - 人臉 |  |  <http://youtu.be/LfTtd1gziIY> |   |
| 直接在模型上畫圖 |  | <http://youtu.be/vl3T5id-ovA>  | [模型](MonkeyVertexPaint.blend)  |
| 透明貼圖 | [ppt](TransparentTexture.ppt) | <http://youtu.be/f1Zu75Orb1w> <BR/> <http://youtu.be/vrq-dgeSdtw> | [模型](TransparentTexture.zip) |

補充：隕石加上 Geometry/Displace 之後看來會更好，如  [此圖所示](rock.jpg)  。

推薦：[Andrew Price 的隕石教學](http://www.blenderguru.com/videos/how-to-make-a-realistic-asteroid/)

## 引入外部資源

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| 引入材質 (五彩玻璃) | [ppt](3_BlenderImportMaterial.ppt) | <http://youtu.be/rghXA7j01s4> | [模型](ImportMaterial.zip) |
| 下載模型 (剪刀) |  | <http://youtu.be/Z1ZrXbNn7LY> |  |
| 匯入模型 (剪刀) |  | <http://youtu.be/v-JE6WQQYGo> |  |

註：使用 Append 或 Link 可以將另一 .blend 檔內的物件、場景或材質匯入。


註：感謝網友告知：關於BLENDER的模型轉移，在BLENDER2.66 版本推出了，ctrl+c ctrl+v 就可以完成兩個檔案間的模型移動了。

## 燈光、相機、圖層與呈像

即便模型已經很棒了，要是燈光打的不好，或者是相機鏡頭捉的不好，都無法呈現出好的作品，因此您還必須透過下列影片學習燈光與相機的相關使用方法。

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| 燈光與相機 |  | <http://youtu.be/ecwZMcEOUIk> | [模型](LightCamera.blend) |
| 鎖定相機到此視角 |  | <http://youtu.be/oZNrWIaDFnE> |  |
| 圖層 |  | <http://youtu.be/R4fiUrxwDeU> |  |
| 互動式呈像 (Cycle Render) |  | <http://youtu.be/lrZel1bjn0Q> |  |


* Cycle Render 和原本的 Render 看來並不能直接套用，進一步的 Cycle Render 請參考： 
    * <http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.61/Cycles>
* 虛擬巡覽 (Shift-F) ： Andrew Price : Blender Fly Cam Upgrade -- <http://www.youtube.com/watch?v=xcZmyD9jkI4>
* 相機對準目前場景 (Ctrl-Alt-0) :  屬性視窗 (N) 選 Lock Camera to View (可動態調整相機對焦場景)
* 迷失的時候： 按 Home 鍵可以將相機拉回物體場景內
* 針對物體的視角： 選物體後按 . NumPad 可以針對物體切換視角，例如 . 1 可切換到物體正視角。
* 選擇 Render/Postprocessing/Edge 可產生有邊線的卡通風格，若 Threshold 設很大則所有邊線都會出現。

* 推薦：從場景還原相機位置（相機追蹤)
    * <http://youtu.be/qTwZO9Gi5yw>
    * <http://youtu.be/XZGx6UI0s2U>

## 基本動畫

到目前為止，我們已經學習了有關 3D 靜態模型的相關建構技術，但是卻還沒辦法讓模型動起來。在 Blender 當中，有關動畫 (Animation) 的部分可以很簡單，也可能很困難。

要讓一個模型動一動，包含平移、縮放、旋轉，甚至是變化顏色、屬性或材質，都非常的簡單。但是要製作出逼真可操控的好模型，像是人物、動物等等，特別是需要關節骨架動作的模型，就沒有那麼容易了。

讓我們先從容易的下手，介紹 Blender 當中最基本的動畫製作方式，請看下列教學影片。

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| 第一個動畫(立方體平移縮放旋轉) | | [模型](animation1.blend) |
| 跟隨曲線 | | <http://youtu.be/SxQWdE8vTqc> | [模型](follow_path.blend) |
| 跟隨圓圈 | | <http://youtu.be/TLzZpuvUiGc> | [模型](follow_circle.blend) |
| 竹蜻蜓飛行 | | <http://youtu.be/_8o3EZ5nJhc> | [成品](http://youtu.be/IEHzUME64jQ) |
| 直升機飛行 | | <http://youtu.be/AQftgnr6G_Y> | [成品](http://youtu.be/71oyskcb1wM) |
| 影片貼圖 (電視) |  | <http://youtu.be/6SFEycfyuag> |  [成品](http://youtu.be/jRQU6Iqy1CI) |
| 熱氣球飛行 |  |  <http://youtu.be/9P0a5Gl3Zm4> |  [成品](http://youtu.be/M-FQn61q3L0)  <br/> [模型](balloon_fly.zip) |

## 變形動畫 ShapeKey

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| 變形 ShapeKey 1 (基礎) |  | <http://youtu.be/AKQJtEUu7VA> |  |
| 變形 ShapeKey 2 (方塊動畫) |  |  <http://youtu.be/NkdIzTAiOCo> | [模型](ShapeKey2.blend) |
| 變形 ShapeKey 3 (猴鼻子) |  |   <http://youtu.be/m5_QthFJDEM> | [模型](ShapeKey3.blend)  <br/> [成品](http://youtu.be/5PIU1MV7KZA) |

## 關節骨架

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| 關節骨架基礎 | [ppt](4_BlenderArmatureBasic.ppt) | <http://youtu.be/oEOHdyb52K4>  mac: <http://youtu.be/GW1XJzVhsk8>  | [模型](ArmatureBasic.blend) |
| Blender動畫：木偶人 (主控骨架) |  | <http://youtu.be/vgCR7ooDU9s> | [模型](armatureController.blend) |
| Blender動畫：木偶人 (完整骨架動畫) |  |  <http://youtu.be/Htm1GPW5etc> |  [成品](http://youtu.be/3kmT-I-16rs)  <br/> [模型](woodman_armature.zip) |
| Blender動畫：木偶人 (1:建模) |  | <http://youtu.be/zJhh2JRpTCE> |  |
| Blender動畫：木偶人 (2:綁定) |  | <http://youtu.be/J0952p-mNIc> |  |
| Blender動畫：木偶人 (3:動畫) |  | <http://youtu.be/zUUQ7cQSI6M> |  |
| Blender動畫：橡皮人踢腿擺手 (動畫) |  | <http://youtu.be/91-gk5XNdhk> | [模型](peopleArmature.zip) |
| Blender 的關節與骨架 (王銘璟示範)  |  | <http://youtu.be/zvj4Gh2JCaU> |  |


筆者對關節骨架還不太熟練，沒辦法示範好進一步的操作，因此建議各位讀者看下列 cgboorman 在 YouTube 上的影片，以便練習進一步的關節骨架設計。

* Blender 2.6 Tutorial 13 - Bones & Rigging 101 -- <http://youtu.be/EcNGeIV0BsU>
* Blender 2.6 Tutorial 30 - IK Rigging Pt. 1 / 3  -- <http://youtu.be/4yiC6pEQMAw>
* Blender 2.6 Tutorial 31 - IK Rigging Pt. 2 / 3  -- <http://youtu.be/Cvjg7nDnVLk>
 * 20:35 左手骨架鏡射為右手 (按 S X -1)，然後再用 Armature/flipname 將名稱也改變。
* Blender 2.6 Tutorial 32 - IK Rigging Pt. 3 / 3  -- <http://youtu.be/k3r1bWtJlAo>
 * 11:40 腳踝的 IK bone 控制。 24:00 主控全身的控制點 25:00 綁定，選 皮膚模型再選 Armature 按 Ctrl -P，選 Set Parent to Armature with Automatic Weight.
 * 骨架 X 軸鏡射操控打勾時，雙手 (雙腳) 會作相同動作。

## 人物建模

由於筆者對人物建模還不熟悉，建議讀者看以下許家瑜同學示範的影片。

* 許家瑜 (女娃 1) -- <http://www.youtube.com/watch?v=sgmMwyOp6O0>
* 許家瑜 (女娃 2) -- <http://www.youtube.com/watch?v=kMb_e6OuX0k>
* 許家瑜 (女娃 3) -- <http://www.youtube.com/watch?v=N86qjlAvLcU>

## 驅動控制

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| Blender 動畫：驅動 (1) 用自身的位置控制Y軸大小 | | <http://youtu.be/nuFKEPlJ9EI> |  |
| Blender 動畫：驅動 (2) 用empty物件控制z軸大小 | | <http://youtu.be/C3RrUHsmPnI> |  |
| Blender 動畫：驅動 (3a) 使用新屬性控制 | | <http://youtu.be/1d2X0eT3vic> |  |
| Blender 動畫：驅動 (3b) 球穿越閘門 | | <http://youtu.be/r7OFMFT28GY> | [模型](DriverBallGate.blend) |
| Blender 動畫：驅動 (4) 直升機動螺旋槳就旋轉| | <http://youtu.be/jWLJlGk6-Gs> | [成品](http://youtu.be/yF2qgHWdie8)  <br/> [模型](DriverHelicopter.blend) |

## 粒子物理系統

有時候我們會想做出像火焰、水流、布料等等很難用建模做出來的動畫，此時就必須要使用粒子系統 (Particle System) 與物理系統 (Physics System)。

Blender 中的粒子系統可以模擬出成千上萬的粒子噴射效果，這種效果在製作「火焰、煙霧、隕石」等效果時是非常必要的技術。而物理系統則是用來製作像是「布料、液體、煙霧、碰撞」等效果。以下是我們關於粒子物理系統的教學影片。

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
|  粒子系統基礎 | [ppt](5_BlenderParticles.ppt) | <http://youtu.be/bELPwqa3VF4> |  [模型](ParticleBasics.blend) |
|  布料 | [ppt](5_BlenderCloth.ppt) | <http://youtu.be/PYby0fg6lFs> <http://youtu.be/P85r4hpyNGE> |  [模型](Cloth.blend) |

## 合法素材取得

為了製作動畫，您通常需要取得一些外部的素材，像是「材質、圖片、模型、影片、音樂、音效」等等。

如果您隨便從網路上取得這些素材，很容易就會不小心侵犯智慧財產權，因此最好能夠小心辨識素材的合法性。

目前大部分的合法素材都是以創作共用的方式在網路上分享的，以下影片會告訴您如何去下載合法的動畫用素材，特別是「創作共用」類的素材。

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| 動畫使用的創作共用素材 | [ppt](BlenderLegalResource.ppt) | <http://youtu.be/zQVkOuD4Ow8> <http://youtu.be/fHLrK2w35jI> | |


* 模型： <http://www.blendswap.com/>, 
    * 森林場景： <http://www.blendswap.com/blends/view/77903>
* 音樂：<http://freemusicarchive.org/> , <http://www.jamendo.com/> , <http://www.audiomicro.com/> 
* 音效：<http://www.freesfx.co.uk/> , <http://www.freesound.org/browse/> 


## 使用 Blender 加入後製特效

| 主題 | 文章/投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| 以 Node Editor 製作模糊效果 |  | <http://youtu.be/DB3K19cYi4gv> | [ppt](BlurBall.blend) |
| 以 Node Editor 製作前景模糊、背景清楚的效果 |  | <http://youtu.be/fj2aBmnXTcM> | [模型](BlurBallOverGround2.blend) |
| 演算圖層：做出移動中有模糊效果的球 |  | <http://youtu.be/9_hcFK-9d8o | [模型](MovingBall.blend) |
| 演算圖層：做出被甜甜圈遮到的移動模糊球 |  | <http://youtu.be/YqVf2Sd53wo> | [模型](BallBump.blend)  <br/> [成品](http://youtu.be/YqVf2Sd53wo) |
| [去除綠背景](removebackground) | | <http://youtu.be/zo_6FfzAcwc> | [影片成品](http://youtu.be/EfW1uw-TEBQ) |

## 使用 MovieMaker 編輯字幕、配音、與製作影片

最後，您需要將所有用 Blender 製作出來的影片都剪接放在一起，然後配上字幕、音樂與聲音。

雖然 Blender 當中有一個 Video Sequence Editor 可以進行較複雜的影片後製動作，但是卻不太適合用來做字幕與配音，在此我們採用 Windows 當中內建的 MovieMaker，來示範影片製作剪輯的方法，以便能夠完整的介紹動畫製作的流程。

| 主題 | 投影片 | 教學影片 | 模型下載 |
|-----|------|-------|--------|
| 使用 MovieMaker 製作影片 |  | <http://youtu.be/2maI-GKUmCE> |  |


* <http://www.aegisub.org/> -- Aegisub is a free, cross-platform open source tool for creating and modifying subtitles
* 製作字幕軟體程式：快速幫影片配字幕（.srt） -- <http://wiiind.com/?p=1282>

## 其他相關工具

* 開源影像處理軟體：建議採用 Krita -- <http://krita.org/download/krita-desktop/>
* 開源影片後製軟體：建議採用 Natron -- <http://natron.inria.fr/>


## 用 blender 做 3D 遊戲

* Blender Game Tutorial (2.6): Building a 3D Game - Part 1 -- <http://www.youtube.com/watch?v=5Wi23L3KI1U>
* Blender Game Tutorial (2.6): Building a 3D Game - Part 2 -- <http://www.youtube.com/watch?v=ioz2V94Sq2I>

## 更多教材

對於進階的動畫，特別是關於骨架綁定等部分，有許多部分超出筆者目前的能力範圍，目前筆者還沒有製作相關影片，但是還好網路上有許多的同好，他們的動畫能力都遠超過我，像是德魯依、Andrew Price、Artspacemedia 等等，您可以參考下列網址，以便學習進一步的 Blender 動畫技巧。

* BornCG -- <http://www.youtube.com/user/cgboorman/videos>
    * Blender 2.7 -- <http://www.youtube.com/playlist?list=PLda3VoSoc_TR7X7wfblBGiRz-bvhKpGkS>
* Andrew Price (英文：澳洲)：<http://ccckmit.wikidot.com/3d:AndrewPrice>
* 德魯依 (中文：台灣)：<http://ccckmit.wikidot.com/3d:druid>
* Artspacemedia (中文：台灣)：<http://ccckmit.wikidot.com/3d:artspacemedia>
    * Blender 基礎教程 - Shape Keys的基本使用
        * <http://www.youtube.com/watch?v=Txbzb4wjoMw>
    * Blender 基礎教程 - 載入中文字型
        * <http://www.youtube.com/watch?v=vDY9CXcG364>
    * Blender 基礎教程 - 常用文字屬性的設定和應用
        * <http://www.youtube.com/watch?v=UH12xllyTko>
    * Blender 基礎教程 - 演算圖層(Render Layers)基礎 1 (讚！)
        * <http://www.youtube.com/watch?v=Tqx9AQQycTs>
    * Blender 基礎教程 - 演算圖層(Render Layers)基礎 2 (遮罩 MaskLayer 的使用)
        * <http://www.youtube.com/watch?v=4xarYZILxy4>
    * Blender 基礎教程 - Driver(驅動)基礎 1
        * <http://www.youtube.com/watch?v=5DLeKVikRJI>
    * Blender 基礎教程 - Driver(驅動)基礎 2
        * <http://www.youtube.com/watch?v=k2bsaKlLycc>
    * Blender 基礎教程 - Driver(驅動)基礎 3
        * <http://www.youtube.com/watch?v=r5ViSPvcTNM>
    * Blender 基礎教程 - Driver(驅動)基礎 4
        * <http://www.youtube.com/watch?v=utlpOsXyqAs>
* 2D 轉 3D
    * <http://www.youtube.com/watch?v=IqnlB7xbAwY>
* 3D 印表 -- <http://www.blender3d.org/e-shop/product_info_n.php?products_id=160>
* 快捷鍵：<http://waldobronchart.be/blenderkeyboard/>

* 插件
    * 匯出成網頁:  <http://www.blend4web.com/en/downloads/>

 
