Blender スクリプトでアニメーションしてみる

 

BlenderGUIで実装されている機能はだいたいスクリプトで書くことが出来ます。

場合によってはスクリプトで書いた方が便利なこともある!らしい! 

スクリプトでアニメーションさせる簡単なメモ。

 

アニメーションは

1.フレームを指定

2.オブジェクトのトランスフォームを変更

3.キーフレームを挿入

という流れで動かします。

今回はシンプルなやつを書いてみたいと思います。

 

フレームの指定

どのフレームにキーフレームを挿入するかを指定します。

bpy.context.scene.frame_set(0)

これでフレーム0が選択されます。

 

オブジェクトのトランスフォームを変更

位置の変更。

bpy.data.objects["Cube"].location.x+=10

こう書けばオブジェクトCubeはX方向に10移動します。

他にzとy方向に動かすことができます。

 

次に角度の変更、回転です。

bpy.data.objects["Cube"].rotation_euler[0]+1

xyzは0,1,2で指定できます。

※回転は勉強不足でちょっと詳しいことは分かりませんがとりあえずこんな感じで回転します!また詳しく調べてから書きたいと思います・・・。

 

キーフレームを挿入

キーフレームにどの情報を持たせて挿入するかに注意します。

bpy.ops.anim.keyframe_insert_menu(type="")

位置情報のみ:type="Location"

回転情報のみ:type="Rotation"

といった具合です。

f:id:anchara-review:20180614123232j:plain

この画像のように、マウスオーバーで対応するスクリプトを表示してくれるので

これを参考にしつつ書けばOKです。

 

まとめ

f:id:anchara-review:20180614124623j:plain

実際に書いてみたのがこちらです。

loc = bpy.data.objects["Cube"].location のようにすることで、以降の入力を省略することが出来ます。何度も使う部分の場合便利です。

 

しっかり勉強すれば凄いことができそうな予感・・・!

今度はもっと詳しく書きたいと思います。

以上!