Open2

Blender備忘録(PythonScript編)

thecoolmuseumthecoolmuseum

記憶を失い目覚めたら見知らぬ場所、見知らぬ世界。記憶の中にあるのは昔使っていた3Dソフトの使い方とPython言語のみ。しかし、聞けば昔使っていたソフトはもう開発終了になったという。
そして今ではBlenderというソフトに世界が支配されているというではないか。
だが希望もある。Pythonスクリプトという言語を用いればBlenderをコントロールできるらしい。支配されてたまるか、こっちが支配してやる。

主に Blender の Python でやったことや気づいたことをメモしていくためのスクラップです。
検証環境: Blender4.2~4.3あたり、Windows11、VS Code、Python3.10.9

thecoolmuseumthecoolmuseum

Blender Python スクリプト開発を VS Code で行う

Blender 内の Script ワークスペースでも、スクリプトを書いて実行することはできるが、コード補完が効かなかったり、日本語コメントが入力できなかったりと、今どきのプログラミング開発環境としては使いにくい。 VS Code と連携すると、コード補完やデバッグ機能などを使えるほか、 GitHub Copilot を活用した開発支援機能などを利用して快適に作業が行える。

コマンドライン作業

Blender、Python (筆者は Miniconda で管理している)、VS Codeはインストール済みを想定

  • Blender 開発用にPython環境を作成し、有効化する
# venv の場合
> cd {python開発用のディレクトリパス}
> python -m venv venv
> .\venv\Scripts\activate

# conda の場合
> conda create -n bpy python=3.10.9
> conda activate bpy
  • VS CodeでBlender Python 用ライブラリの自動補完のためのライブラリをインストールする
pip install fake-bpy-module

VS Code での作業

VS Code から Blender を起動する

  • VS Code の上部検索フィールドをクリック(または Ctrl+Shift+P )し、入力欄に以下を入力して実行する
> Blender: Start

  • インストールされている Blender のリストから使用したいものを選択する


    Blenderが起動した。ここではウィンドウを移動して両方の画面を見えるようにしている。初回は時間がかかることがあるようだ。

VS Code から Blender にアクセスしてみる

動作確認のため、 VS Code から Blender に簡単な問い合わせを行ってみる。

  • VS Code 下部のコンソールの上部から、デバッグコンソールに切り替える

    ターミナルには起動時の情報が表示されている。

    デバッグコンソールには、Blenderからの出力表示欄と、下部で>を表示しているプロンプト入力欄がある。
  • プロンプト入力欄に下記を入力する
> import bpy
> bpy.app.version


Blender のバージョン(4.3.0)が結果として表示された。
これで VS Code と Blender が連携して動作していることが確認できる。

接続解除する

Blenderとの接続が不要になったら接続解除する。

  • Ctrl+Shift+P より、以下を実行する
> Blender: Stop

デバッガのセッションが終了し、 Blender のウィンドウが閉じる。