【Blender】使用 Microsoft Visual Studio Code 作為外部 IDE 來編寫 Blender 腳本/附加組件
Blender 有自己的內(nèi)置文本編輯器,用于編寫腳本和附加組件,但在外部 IDE 中開發(fā)它們非常方便,為用戶提供更多功能,例如自動完成、語法高亮、與版本控制系統(tǒng)和其他工具的集成使開發(fā)更快更容易。
這些 IDE 之一是 Microsoft 的 Visual Studio Code。這是一個免費的通用環(huán)境
,支持使用各種編程語言進行開發(fā),包括 Blender API 語言 - Python。
要開始使用 Visual Studio Code 進行開發(fā),您需要:
安裝 Visual Studio Code IDE 本身
從官方網(wǎng)站,您可以下載適用于 Windows 或 Linux 操作系統(tǒng)的發(fā)行版:https://code.visualstudio.com/Download
下載后,需要安裝IDE。
要使用外部 IDE,您需要安裝單獨的 Python 解釋器
從官網(wǎng)下載 Python 解釋器發(fā)行版:https://www.python.org/downloads/ 。
下載與 Blender 中使用的版本相同的 Python 解釋器版本。對于 Blender 2.79b,這是 Python 版本 3.5.3。對于 Blender 2.80 – Python 3.7.0。
下載后,安裝 Python 解釋器。
安裝 Visual Studio Code 擴展以使用 Python
運行 Visual Studio 代碼。
打開擴展面板。在搜索字段中輸入“python”。從擴展列表中選擇“Python”擴展并單擊“安裝”進行安裝。單擊“重新加載”以啟動擴展程序。
在 Visual Studio Code 中為 Blender 編寫腳本
安裝完所有必要的程序模塊后,我們就可以編寫代碼了。
Visual Studio Code 使用目錄中的項目。在 D:/ 硬盤驅(qū)動器上創(chuàng)建“bl_test”目錄并在 Visual Studio Code 中打開它。這將是我們目前的項目。所有進一步的設(shè)置將僅應(yīng)用于此項目。
將新的 bl_test.py 文件添加到您的項目中。我們將在這個文件中編寫腳本代碼。
配置 Visual Studio Code 項目以使用 Blender Python
按 F1(或 ctrl+shift+p)打開命令提示符。輸入“python select interpreter”指定項目的Python解釋器。
從下一個下拉列表中,選擇已安裝的 Python 解釋器。
按 F1。鍵入“python select linter”以選擇/安裝 Python linter。Linter 用于動態(tài)檢查代碼,指示錯誤和拼寫錯誤。此外,linter 檢查代碼以符合 PEP 規(guī)范。
從下拉列表中選擇“Python:選擇 Linter”。
然后選擇“pep8”。這是當前的 Python 規(guī)范。
保存文件時,Linter 變?yōu)榛顒訝顟B(tài)。要激活它,請保存當前文件。Visual Studio Code 可能會提示您安裝選定的 linter。
通過單擊“安裝”來安裝它。安裝一次就需要了,下一個項目就不需要了。
您可以通過輸入一些代碼并保存它來檢查 linter 工作。
如何在 Visual Studio Code 中啟用 Blender API 的自動完成功能
當我們開始編碼時,我們將看到自動完成功能僅適用于標準 Python 數(shù)據(jù)類型,不適用于 Blender API 數(shù)據(jù)類型。為了解決這個問題,我們需要下載帶有 Blender 數(shù)據(jù)類型的庫并將其連接到我們的項目。
您可以通過單擊“克隆或下載”-“下載 ZIP”按鈕從 GitHub 上的https://github.com/Korchy/blender_autocomplete下載此庫。
我們需要的文件被放置在下載的存檔中的子目錄中,其名稱與它們所針對的 Blender 版本相對應(yīng)。如果我們正在使用 Blender 2.79b 的最新穩(wěn)定版本,我們需要子目錄:2.79。
這個自動完成庫不僅對當前項目有用。將其復(fù)制到可訪問的地方,從那里可以連接到任何項目。創(chuàng)建一個 D:/autocomplete/ 目錄并將下載的存檔中的整個 2.79 文件夾復(fù)制到其中。
現(xiàn)在將其連接到當前項目。為此,請打開 Visual Studio Code 項目設(shè)置:“文件 - 首選項 - 設(shè)置”并切換到“工作區(qū)設(shè)置”。
點擊右上角的雙大括號“{}”切換到文本(JSON)顯示模式。
在“用戶設(shè)置 - 工作區(qū)設(shè)置”窗口中添加一些帶有路徑的指令以啟用 Blender API 自動完成功能。路徑是帶有自動完成庫的 2.79 目錄。
"python.autoComplete.extraPaths": [
"d:/autocomplete/2.79"
],
"python.linting.pylintArgs": [
"--init-hook",
"import sys; sys.path.append('d:/autocomplete/2.79')"
],
保存設(shè)置并關(guān)閉設(shè)置選項卡。
現(xiàn)在,當我們輸入代碼時,Blender API 自動完成功能可以正常工作。
我們可以編寫我們的代碼。
在 Blender 中執(zhí)行外部腳本(2.79 和 2.80)
腳本在 Visual Studio Code 中編寫完成后,需要在 Blender 中執(zhí)行。
啟動 Blender,打開內(nèi)置的文本編輯器并輸入以下代碼:
import bpy
import os
filename = os.path.join("_PATH_", "_FILE_NAME_.py")
exec(compile(open(filename).read(), filename, 'exec'))
其中 PATH 是我們項目所在目錄的路徑,FILE_NAME 是我們代碼中腳本文件的名稱。
這是在 Blender 中執(zhí)行外部腳本的通用代碼。將其保存為模板并用于在 Blender 中執(zhí)行任何用外部 IDE 編寫的腳本。對于更復(fù)雜的多文件項目和插件,您應(yīng)該使用帶有動態(tài)插件重新安裝的代碼。
從 Visual Studio Code 到 Blender 的動態(tài)代碼執(zhí)行橋(僅限 2.80)
您可以在 Visual Studio Code 中安裝 Jacques Lucke 的“Blender Development”擴展,以直接從 IDE 動態(tài)執(zhí)行腳本和附加組件。
在 Visual Studio Code 中打開擴展面板并在搜索字段中輸入“blender development”。
安裝擴展并單擊“重新加載”以啟動它。
按 F1 打開命令行并鍵入“blender start”。選擇“攪拌機:開始”。
按“選擇一個新的 Blender 可執(zhí)行文件……”
并指定 blender.exe 文件的路徑(您的 Blender 2.80 安裝目錄)。
通過網(wǎng)橋連接到 Visual Studio Code 的 Blender 啟動。
要執(zhí)行腳本,請按 F1 并在命令提示符中鍵入“blender run script”并選擇“Blender: Run Script”
。
此擴展為 Blender 插件開發(fā)人員提供了許多方便的功能,但它也存在一些問題 - 它僅適用于 Blender 2.80 版,并且在執(zhí)行腳本時有時無法在 Blender 中找到正確的窗口上下文定義。例如,下面的腳本不能通過這個擴展執(zhí)行。
腳本示例
在 bl_test.py 文件中鍵入以下代碼并運行外部腳本(使用 Blender 內(nèi)置文本編輯器中的代碼)。
import bpy
bpy.ops.mesh.primitive_cube_add(location=(0, 0, 0))
bpy.ops.object.mode_set(mode='EDIT')
bpy.ops.transform.rotate(value=0.785398, axis=(0, 0, 1))
bpy.ops.object.mode_set(mode='OBJECT')
Obj = bpy.context.active_object
mod = Obj.modifiers.new("Bevel", 'BEVEL')
mod.segments = 3
bpy.ops.object.shade_smooth()
mod1 = Obj.modifiers.new("Array", 'ARRAY')
mod1.count = 10
mod2 = Obj.modifiers.new("Array", 'ARRAY')
mod2.relative_offset_displace[0] = 0.05
mod2.relative_offset_displace[1] = 0.5
mod2.relative_offset_displace[2] = 0.9
mod2.count = 10
此代碼將立方體添加到場景中,將其旋轉(zhuǎn) 45 度,為其添加倒角,并將其與 10×10 的數(shù)組相乘,并帶有一些偏移。因此,您可以渲染時尚的抽象背景。
參考鏈接:
https://b3d.interplanety.org/en/using-microsoft-visual-studio-code-as-external-ide-for-writing-blender-scripts-add-ons/文章來源:http://www.zghlxwxcb.cn/news/detail-441227.html
參考視頻:
https://www.bilibili.com/video/av502997714文章來源地址http://www.zghlxwxcb.cn/news/detail-441227.html
到了這里,關(guān)于【Blender】使用 Microsoft Visual Studio Code 作為外部 IDE 來編寫 Blender 腳本/附加組件的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!