概要
BlenderのPython APIを使った開発において、Blender内臓のpipを用いてインストールを行うことで外部ライブラリも利用することができます。
しかし、プロジェクトごとにパッケージを管理したい場合や、fake-bpy-module をインストールしてコード補完を利用する場合などは仮想環境でパッケージの管理を行いたいところです。
ここではBlenderのPython API開発での仮想環境の使い方を紹介します。
動作環境
ここでは以下の環境で動作確認を行っています。
- Windows 11
- Blender 4.0.1
仮想環境の作成
Blenderのプロジェクトファイル .blend
が保存されているディレクトリをプロジェクトディレクトリとして、以下のような構成で仮想環境を作成します。
📂 (project_directory)
├─📂 .venv
├─📄 hoge_project.blend
└─📄 hoge_script.py
下記のコマンドによりBlender内臓のPythonから venv
による仮想環境を作成します。
& "C:\Program Files\Blender Foundation\Blender 4.0\4.0\python\bin\python.exe" -m venv .venv
.\.venv\Scripts\activate
ここでは外部ライブラリの一例として numpy
をインストールしてみます。
pip install numpy
Pythonスクリプト
外部ライブラリを呼び出すPythonスクリプトは以下のように記述します。
import pathlib
import sys
import bpy
# プロジェクトファイル(.blend)のディレクトリを取得
project_dir = pathlib.Path(bpy.path.abspath("//"))
# 仮想環境の site-packages ディレクトリを指定
site_packages_dir = project_dir.joinpath(".venv", "Lib", "site-packages")
# site-packages ディレクトリをPATHに追加し、外部ライブラリを検索対象に追加
sys.path.append(str(site_packages_dir.resolve()))
# PATH追加後に外部ライブラリのインポートが可能になる
import numpy as np
# 外部ライブラリの呼び出し確認
print("numpy version:", np.__version__)
Pythonスクリプトの実行方法は通常通りで、BlenderのGUI上や下記のコマンドで起動します。
& "C:\Program Files\Blender Foundation\Blender 4.0\blender.exe" -b hoge_project.blend -P hoge_script.py
以下のように正常に numpy
のインポートが通っていることが確認できます。
Blender 4.0.1 (hash d0dd92834a08 built 2023-11-17 00:36:52)
~~~中略~~~
numpy version: 1.23.5
Blender quit
補足: fake-bpy-module
の仮想環境へのインストール方法
VSCodeでPythonスクリプトをコーディングする際に、bpy
モジュールのコード補完を有効にするために fake-bpy-module
が利用できます。
pipからインストール可能なので、上述と同様で下記のコマンドによりインストールします。
.\.venv\Scripts\activate
pip install fake-bpy-module-4.0
仮想環境をアクティベートした状態で下記のコマンドにより、仮想環境を認識した状態のVSCodeが起動します。
code .
bpy
モジュールのコード補完が有効化されていることが確認できます。