こんにちは、Unityエンジニアのオオバです。

先日Unity2017.1の正式リリース候補バージョンがリリースされました。

改めてリリースノートを読んでみました。
気になった追加機能GameObjectRecorderを調べてみます。

Animation: New GameObjectRecorder in UnityEditor.Experimental.Animations

リリースノートにはシンプルに紹介されていますが、触ってみると結構面白い機能でした。

毎フレーム状態をAnimationClipに記録させる機能

Unity - Scripting API: GameObjectRecorder

ドキュメントのサンプルに従い動かしてみます。

Unity GameObjectRecorderが面白いかもしれない_0

シーンビュー上で適当に動かし、下記のように毎フレーム記録するコードを書きます。

void LateUpdate ()  
{
 if (isRecord) {  
  // 毎フレーム記録する  
  r.TakeSnapshot (Time.deltaTime);  
 }
}

Unity GameObjectRecorderが面白いかもしれない_1

するとこのようにAnimationClipに書き込まれます。

Unity GameObjectRecorderが面白いかもしれない_2

そのAnimationClipを動かすと、このように記録されたアニメーションが再生されます。

まとめ

今回はサンプルそのままで、何も工夫はありませんでしたが、Editor拡張を頑張ればUnity上でアニメーションを作りやすくなるかもしれません。現時点でExperimentalの機能なので深掘りはしませんが、正式にリリースされた際にはいい感じのアニメーション制作Editorを作ってみたいです。

サンプルコードはコチラです。

オススメ記事
検証環境