LoginSignup
3

More than 1 year has passed since last update.

Blender Python入門してみた

Last updated at Posted at 2021-10-13

Blenderをpythonで操作したい

環境

mac os catalina 10.15.7

$ python -V 
python 2.7.16
$ /Applications/Blender.app/Contents/MacOS/Blender -v
Blender 2.93.4

スクリプトの実行方法

CLIで実行する方法と、BlenderのGUIで実行する方法があります。

①CLIで実行する方法

CLIでBlenderを立ち上げる

次のコマンドでターミナルからBlenderを立ち上げることができます。
Blenderアイコンから立ち上げた時と同じように、初期画面が表示される。

$ /Applications/Blender.app/Contents/MacOS/Blender

スクリプトを指定して立ち上げる

12個の球体が均等に表示されるpython scriptを作ります。

loop.py
import bpy
import math

# 既存要素削除
for item in bpy.data.meshes:
    bpy.data.meshes.remove(item)

N = 12
RR1 = 10.0
RR2 = 2.0
for i in range(0, N):
    rad = 2 * math.pi * i /N  # 角度計算2π i /n
    xx = RR1 * math.cos(rad) # x座標計算 半径*cosθ
    yy = RR1 * math.sin(rad) # y座標計算 半径*sinθ
    # 球体作成
    bpy.ops.mesh.primitive_ico_sphere_add(location=(xx, yy, 0),radius= RR2, subdivisions = 5 )

上でimportしようとしているbpyモジュールは、Blenderがバックグラウンドで動いている状態でしか動かない。なので、単純にpython loop.pyとしても動かない。

$ python loop.py
Traceback (most recent call last):
  File "loop.py", line 1, in <module>
    import bpy
ImportError: No module named bpy
$

以下で実行します。

$ /Applications/Blender.app/Contents/MacOS/Blender --python loop.py

スクリーンショット 2021-10-13 22.22.06.png

②BlenderのGUIで実行する方法

以下のように、右上にtext editer、右下にpython consoleを表示。
text editerでは、実行したいコードを書いておく。

スクリーンショット 2021-10-14 17.53.07.png

右上の三角マーク「Run Script」で実行することができる。

スクリーンショット 2021-10-14 17.55.04.png

また、「Scripting tab」を開くと、GUIでの操作がpythonだとどう書かれるかリアルタイムで確認することができる。スクリーンショット 2021-10-14 18.29.47.png

オブジェクトやキーフレームの生成や削除、移動などの操作がわかってきたら、公式ドキュメントを読んで引数の意味や種類を調べる。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
3