本日は Blender の小ネタ枠です。
Blenderで利用可能なアニメーションのキーフレームの補間タイプを試してみたの記事にします。
前回記事
以下の前回記事の続きです。
bluebirdofoz.hatenablog.com
BACK(戻り)のパラメータ変更
補間タイプ:BACK(戻り)では以下のパラメータでオーバーシュート量を調整可能です。
・back
docs.blender.org
back=1.0
back=2.0
back=0.0
back=-1.0
サンプルスクリプト
試験に利用したサンプルスクリプトを以下に添付します。
・Script_change_keyframe_interpolation_TypeTest_Back.py
# bpyインポート import bpy # アニメーションのキーフレームの補間タイプを変更する def change_keyframe_interpolation( arg_actiondata:bpy.types.Action, arg_interpolationtype:str, arg_back:float) -> bool: """アニメーションのキーフレームの補間タイプを変更する Keyword Arguments: arg_actiondata {bpy.types.Action} -- 指定アクションデータ arg_interpolationtype {str} -- 指定補間タイプ arg_back {float} -- Backのオーバーシュート量 Returns: bool -- 実行成否 """ # 引数をチェックする if arg_actiondata == None: return False # アクション内の全アクションカーブを走査する for fcurve in arg_actiondata.fcurves: # カーブ内の全キーポイントを走査する for keyframe_point in fcurve.keyframe_points: # キーフレームの補間タイプを変更する # Keyframeアクセスのマニュアル # (https://docs.blender.org/api/current/bpy.types.Keyframe.html) keyframe_point.interpolation = arg_interpolationtype keyframe_point.back = arg_back # 更新したキーフレームに合わせてカーブを更新する fcurve.update() return True # 関数の実行例 actiondata = bpy.data.actions.get('Action') interpolationtype = 'BACK' back = 1.0 change_keyframe_interpolation( arg_actiondata=actiondata, arg_interpolationtype=interpolationtype, arg_back=back)