【BlenderAPI】開発環境を用意しよう - Windows編
BlenderAPIの開発のために、VScodeを使った開発環境を用意しましょう!
Blender自身にエディタは付属していますが、日本語が入力できないなどの問題があるので導入をお勧めします。
Blender用の開発環境を作ってみよう!
どうして開発環境が必要なの?
Blenderにはテキストが入力できるエリアがあります。
基本的には、そこで入力したPythonコードを実行する形になります。
けれども、ここで入力をするにはいくつかの問題があります。
1つは簡単に日本語が打てません。
プログラムする上で日本語を入力する機会はあまりありませんが、コメントできないのは不便です。
どうしても入力したい時は、メモ帳などで打ち込んだ内容をコピペするしかなさそうです。
他にも、別のエディタで使える便利なモジュール(例えばminimapとか)を追加したりはできないので、
Blender内部のエディタではなく、別のエディダで一度書いてからコピペするのをおすすめします。
導入の方針
Pythonの導入から行おうと思います。基本的にはこれらの流れで行います。
もしすでに環境が整っている場合は、適度にスキップしてください。
紹介する方法以外にも、別の環境や別のエディタで構成できると思います。臨機応変におねがいしますね!
もしかしたら「?」と思われているかもしれませんが、順を追って説明していくので大丈夫です。
図にするとこんな感じですね。
「pyenv」と言う文字を見て「conda」の方が良いと思われる方もいるかもしれませんが、
私は安定して使えているので、今回はこれで導入させてください。condaでもできると思います。
Chocolateyを導入する
Chcocolateyは、
既存ソフトをコマンドラインから一括で導入できる便利なソフトです。
通常は、Pythonをインストーラーで導入することが普通かなと思うのですが、
いくつも環境を作ったりするとパスを通すのが面倒だったりするので、今回はこれを使います。
黒い画面に白い文字が苦手だ...というのはわかります。けど、絶対に便利なのでこっちに慣れましょー。
なお、個人使用の無償利用の場合は機能が制限されているようですが、全く問題ないです。
まずは「Chocolatey」のページに行きます。英語ですが翻訳ツールとかを使って読み進めてください...!
Installing Chocolatey - Chocolatey (外部ページ)
利用規約等も読みつつ、ページにしたがって導入を進めていきます。
Step1のメール購読は "optional" なので、購読したければ入力してください。Step2からいきます。
Step2に書いてあるシステム要件を確認しましょう。
執筆現在では「
windows7以降
」になっていました。
続けます。まずは、
PowerShellを「管理者権限」で開始します。
「Windows Terminal」を利用している人は、「Windows Terminal」を管理者権限で開きます。
Chocolatey Install: 2 に書かれているコマンドをコピーします。
このコマンドを今さっき開いたPowerShellで実行します。コピペをしたらEnterを押すとインストールが開始します。
執筆時点ではこんな感じ。少し時間がかかるかもしれません。
> Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
導入が終わったら「choco」と打ってみてください。
バージョンが表示されたらChocolateyの導入完了です。
> choco Chocolatey v0.10.15 Please run 'choco -?' or 'choco <command> -?' for help menu.
Chocolatey で vscode と pyenv-win を導入する
「vscode」とは「Visual Studio Code」というテキストエディタ
です。メモ帳の超拡張版と思ってください。
「pyenv-win」とは「Python」を管理してくれるソフト
です。いろいろ便利なのでこちらを導入します。
後に pyenv-win を使って Python を導入します。
さきほどのPowerShellで、このようにコマンドを入力します。一度にインストールが開始されます。
途中、スクリプトを続けるかどうか聞かれるので「y」(実行)か「a」(すべて実行)をしてください。
> choco install VisualStudioCode pyenv-win
これで完了です。
以下のコマンドを実行すると、インストールされているソフトが確認できます。
> choco list -lo
pyenv で Python を導入する
pyenvでPythonを導入しましょう。まず、どのバージョンのPythonを導入するか選択します。
Blenderに付属しているPythonと同じバージョンを選ぶと良いと思います。
Pythonコンソールにバージョンが書かれてます。
私のBlenderは「3.7.7」だったので、このバージョンのPythonを導入しようと思います。
さきほどのPowerShellから、以下のコマンドを実行します。導入したいバージョンは適宜変更してください。
なお「pyenv」コマンドに「win」はつかないので注意してくださいね。
> pyenv install 3.7.7
インストールが完了すれば、以下のコマンドからどのバージョンのPythonが入っているかを確認できます。
> pyenv versions
今の方法を使えば、別のバージョンのPythonも同時にインストールしておくことができます。
同じバージョンのPythonを共存させることはできませんので、注意を。
pyenvでバージョンを切り替えるコマンドは以下です。
> pyenv global 3.7.7
どのPythonを利用しているかを確認するコマンドは以下です。
> pyenv version
vscode で fake-bpy-module を利用する
「fake-bpy-module」を導入します。
現在導入したPythonは、BlenderのPythonとは一切関係がありません。
Blender専用で提供されている bpy などをプログラムに記述すると「存在しません」とエラーが出ます。
「fake-bpy-module」は、Fakeを読み込んで存在しないエラーを出ないようにしてくれます。
なお Fake (嘘)なので、実行まではできません。
まずpip自体のアップグレードを行います。PowerShellで以下を実行してみましょう。
> pip install --upgrade pip
そして以下のコマンドを実行することで、導入することができます。
Blenderバージョンに合わせて、数字を変えてください。
> pip install fake-bpy-module-2.90
以上で全てが完了しました。
おわりに
お疲れ様でした。非常にAPI開発が進むと思います。
書いたスクリプトを実行するには、vscodeからコピーしてBlenderに貼り付けてくださいねー