BlenderでKeybordの入力を表現する

BlenderでAnimationNodesを用いたキーボードの動作の表現をします。

メモ程度に残して置くので、参考にしていただけたら幸いです。

(簡易的な例のため、そのまま流用しても汎用性がありません。)

Gif動作の例を表示したかったのですが、記事のサイズの上限にひっかかるので割愛


①一つのコントローラー(Empty)に対して動作する

完成形①のNode

事前に行うこと

  1. 動作させたい複数のキーボードのキーに対してオブジェクトのグループを行う
  2. コントローラとなるEmptyオブジェクトを置く

Nodeで行っていること

  1. キーボードのグループオブジェクトに対して、位置を抽出
  2. ObjectControllerFallOffとOffsetVectorで、コントローラの範囲外の場合は常にZ軸に+1.0移動
  3. 同様にコントローラの範囲内の場合は常にZ軸に-1.0移動
  4. Z軸の入力制限を行うためにMapRangeを用います。(上記の場合、InputとOutputは、Z軸0.0~1.0までしか動作しないため、置く場所によって変更する必要があります)
  5. TransformOutputで出力します


②複数のコントローラーに対して動作させる

完成形②のNode

複数のコントローラに対してGroupしています。(①で示した例のKeybordと同様の入力をしています。)


上記の例では、簡易的に示すためTransformを用いています。

回転などに対応する場合、やや複雑になりますがMatrixを用いると表現しやすくなります。


参考

(animation node) https://animation-nodes-manual.readthedocs.io/en/latest/

(blender) https://www.blender.org/