天天看點

Blender v2.79b 的編譯與使用

一:判斷Blender是否适合自己

搜尋外網教程,Sebastian Lague大神錄制有Unity中制作RPG遊戲等一系列開源的視訊教程,其中有用到Blender建立低面數角色、衣服、武器等模型,制作了走、跑、攻擊等簡單動畫。個人認為這是最好的入門教程。B站上有别人搬運的。還有個展UV的教程,不過搬運得不完全。

其他還有幾分鐘内做個低模并綁定骨骼的快餐式教程,很容易搜到,零基礎就可以看。

觀看這些教程,了解 Blender 的基本操作模式,決定是否适合自己。(我認為Blender是級聯指令式操作,直白講就是背很多快捷鍵。)

二:了解 Blender 獨特的操作模式。

除了非常重要的快捷鍵,Blender 很多地方是與衆不同的,初次接觸可能會不習慣。

快捷鍵作用域:

每個視窗都是不同的快捷鍵作用域。具體有哪些呢?File - User Preference - Input 檢視快捷鍵選項:

Blender v2.79b 的編譯與使用

每一組可以展開的清單都是一個作用域。其中 Window 代表全局快捷鍵。

當滑鼠指針指着 3D視口,目前的快捷鍵組就是 3D View;指着文本編輯器,目前的快捷鍵組就是 Text。

可以輸入功能名稱(Name)或按鍵組合(Key-Binding)查詢相關的快捷鍵。

v2.8以前,使用者設定是不會自動儲存的,需要手動點選 Save User Settings

滑鼠指針:

Blender 沒有“目前激活的視窗”,隻有“目前滑鼠指着的視窗”。這很怪異,因為當你在 Text Editor 敲代碼時,滑鼠一移開編輯器,編輯器就不接受輸入了。

唯一的例外就是文本輸入框。

滑鼠中鍵:

按住滑鼠中鍵移動可以平移各種視圖,包括文本編輯器。Ctrl+滑鼠中鍵可以自由縮放部分2D/3D視圖。

工作區布局:

自定義的工作區布局隻儲存在目前工程檔案中。要使其他工程也使用目前布局,隻能将目前工程儲存為啟動檔案(File - Save Startup File),并且在設定中取消勾選 File - Load UI。

其他奇怪的地方:

左擊放置 3D Cursor(新物品的誕生地),右擊選擇, A切換全選/全不選。Shift+右擊連選。L 選擇滑鼠指針下的一個Loop。G移動(Grab),R旋轉。X删除。M移動物體到某一層。

Blender v2.79b 的編譯與使用

右擊、A、L、G、R、X等等不僅僅作用于3D視口,其他視窗也可能用得到,比如曲線編輯器(Graph Editor)、動作編輯器(Dope Sheet)。

在3D視口中縮放、移動視圖,有時會變得很慢,跟受到了阻滞一樣,需要點選小鍵盤的

.

按鍵來重置視口(View Selected)。

三:自定義工作區布局。

Blender v2.79b 的編譯與使用

點選并拖動左下角的三橫圖示可以在目前視窗下方克隆一個視窗。視窗類型(Panel Type, PT)可以通過點選下拉圖示自由切換。點選并拖動三橫圖示也可以重新合并分裂出的視窗。

分裂或合并視窗也可以通過右擊視窗邊框完成。

Blender v2.79b 的編譯與使用

許多類型的視窗都有可以展開或隐藏的側欄(Header Type, HT)。隐藏時,在一旁顯示如下圖示:

Blender v2.79b 的編譯與使用

3D視口有兩個側欄:屬性界面(Properties Panel)和工具架(Tool Shelf),可分别按N、T顯示或隐藏。

四:Python。

Python 之于 Blender 并非可有可無,而是不可分割的一部分。Blender 使用相應的 Python 子產品定義如何繪制各個界面。Python 檔案位于安裝目錄的scripts檔案夾,可以右擊視窗的工具欄菜單,點選 Edit source 在内置文本編輯器中打開相應Python代碼。

修改這些Python檔案可以進一步定制 Blender 的外觀。比如增删按鈕、改變按鈕位置、增删菜單項目(Menu Type, MT)。

内置文本編輯器可以關聯外部檔案,也可以建立内部檔案。但無論是外部還是内部,文本都儲存在 .blend 檔案中。關聯外部檔案的可以用如下按鈕更新檔案:

Blender v2.79b 的編譯與使用

友善起見我直接把它移到 Run Script 按鈕的旁邊:

Blender v2.79b 的編譯與使用

各種插件也安裝于 scripts/addons 檔案夾。

五:源碼編譯。

主要耗時的部分是下載下傳官方提供的預編譯依賴庫。依賴庫檔案托管于官方的SVN倉庫,

SVN 下載下傳很慢而且會中斷,中斷後恢複需要手動清理,然後程式重新掃描已下載下傳檔案,之後才會真正地繼續下載下傳,流程更慢。經常中斷的話推薦改用Wget下載下傳。初次編譯需要十分鐘左右,之後更新編譯很快的。Visual Studio 會建立ipch檔案夾非常非常占空間,強烈建議建立兩個空白檔案阻止vs的上述操作:

build\.vs\Blender\v16\ipch

build\source\.vs\source\v16\ipch

我開梯子下載下傳SVN時,最新版本的依賴庫一遍下載下傳成功,但是2.7的依賴庫挂梯子也會失敗。

諷刺的是預編譯依賴要下載下傳3.4個GB,一壓縮你猜多大?幾百MB而已!詳情見:KnIfER/KnIlender。而且隻建構 Release 的話,隻有 TMD 146MB!

純美術的玩家就算了,我認為學會Blender的Python程式設計才是掌握 Blender 的開始。而編譯源碼是很重要的一部分,可以避免隻掌握Python而太片面、太空中閣樓。

編譯源碼後可以更進一步地定制 Blender。出于個人喜好,我對源碼進行了如下改動:

I. 多個設定視窗之間不共享狀态。這樣我就可以在一個視窗查閱快捷鍵,在另一視窗改變主題顔色等,互不影響。

II.滑鼠滾輪滾動下拉菜單時,滾動到最後一個不回到第一個,反之亦然。

III.重定向scripts檔案夾,因為我把 scripts 也傳到 Github 上面了。

IV.為文本編輯器和時間軸編輯器視圖增加橫向擴充的快捷鍵功能。

有趣的是UI部分借用了生物學的DNA概念:DNA定義基類,然後運作中間程式生成繁複的RNA源檔案。作者是想提前體驗一下基因程式設計?然而一不小心RNA生成失敗,就會遭遇如下吐槽:

Blender v2.79b 的編譯與使用

源碼還包含大量

// XXX

三叉标記,大哥,你搶了我的專利!

六:源頭活水。

I. 問答社群:stackoverlow、stackexchange

II. 官網

Release_Notes: 更新日志可以檢視新特性,也可以比對源碼。

更新訊息

Python 文檔查詢系統

示範項目 : blender 的電影項目是開放而非開源,大部分内容都存于雲端,需購買雲會員才能通路。連結中列出的是可以通路的公共内容。不過有些網絡下載下傳不了,這就難受了。

繼續閱讀