夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

BlenderでPython仮想環境を立て外部ライブラリを使用する

本日はBlender枠です。

BlenderはどちらもPythonを使用したスクリプトを実行できますが、Pythonの開発では異なるバージョンのPythonやライブラリを使用することや、モジュールの更新などの容易さにより同じマシーン内に異なる環境を構築する仮想環境を使用することが一般的です。

 今回はBlenderで仮想環境を立て使用する方法を行っていきます。

〇環境

Windows 11 PC

・Anaconda Prompt(Anaconda3)

Blender 4.0

・Maya2024

BlenderPython仮想環境

①Anacondaで次のコマンドを実行します。

conda create --name=blender_tempenv python=3.9

なお今回は仮の環境であるためblender_tempenvとしていますが任意の環境名に変更してください。

canda createコマンドはAnacondaのenvsフォルダ内に仮想環境を構築します。

pipコマンドなどで仮想環境に任意のBlenderで使用したいライブラリをインストールします。

今回はサンプルとしてMusic21を使用していきます。

pip install music21

③作成したAnacondaの仮想環境をBlenderとリンクするために仮想環境のPythonパスを調べます。次のコマンドを実行します。

 where python

なおPythonのパスはWhereコマンドで探すことができます。

Anacondaで仮想環境が有効化されている状態で行うことでパスを検索することができます。

この場合はすべてのPythonパスが表示されます。実際の仮想環境のパスはC:\Users\(ユーザー名)\anaconda3\envs\ないに作成されます。

④次にBlenderPythonを検索します。

import bpy
import os

blender_exec_path = bpy.app.binary_path
blender_version = bpy.app.version
major_version = str(blender_version[0])  # 整数を文字列に変換
minor_version = str(blender_version[1])  # 整数を文字列に変換
blender_install_dir = os.path.dirname(blender_exec_path)
python_path = blender_install_dir + '\\' + major_version + '.' + minor_version + '\\python'
   
print(python_path);
 

Blenderで上記スクリプトを実行することでBlenderPythonパスを検索できます。

⑤次にBlenderPythonフォルダ名をデフォルトから変更します。

⑥作成した仮想環境のディレクトリをそのままBlenderPythonフォルダと同じ階層にコピーします。

⑦仮想環境のフォルダ名をpythonに変更します。

Blenderを起動します。

BlenderではBlenderのインストールされているパスからpythonというフォルダ名のパスでpython環境をロードしています。

つまり今回はAnacondaで仮想環境のPythonディレクトリを作成してデフォルトのPythonと入れ替えた形になります。

戻す際はPython(Default)と名前を変えた部分を元に戻してあげればよいことになります。

これによってもともとのBlenderの環境を壊さずに任意で環境を用意することができるようになりました。

〇参考

qiita.com

blender.stackexchange.com