RecordAnimEUWSample
Sample : Record Animation in Sequencer With Editor Utility Widget
Install / Use
/learn @pafuhana1213/RecordAnimEUWSampleREADME
RecordAnimEUWSample

UE標準のアニメーション録画機能であるAnimation Recorderを直接呼び出すことで、自分好みのアニメーション録画ツールを作るというサンプルです。
Take Recorder、Sequence Recorderなどアニメーションを録画するためのツールが標準でありますが、プロジェクトにあった形にカスタムしたり自動化するにはエンジン改造が必要になり少しハードルが高いです。 一方、Animation Recorderを直接呼び出せばプロジェクト側のBP・C++コードだけでオレオレアニメーション録画ツールを作ることができるはず…と思って作ってみました。
このサンプルではSequenerに対して再生処理を行ったり、LevelSequenceの内部データを元に処理を変更したりなども行っています。そのため、EditorUtility機能を使ってSequencer周りを便利に・自動化したいと考えている人にも多分参考になると思います。
こういったツールはプロジェクト毎にカスタムするものだと思うので、機能要望は基本的には受け付けていません。
このサンプルが少しでも参考になれば幸いです。
Animation Recorderについて:
https://qiita.com/EGJ-Kaz_Okada/items/7f91099e72f64c6c6285
使い方
- Contents/RecordAnimEUWSample/EUW_SimpleRecordAnimation を右クリックメニューのRun~から開く
- 録画したいLevel SequenceアセットをTarget Level Sequence に設定
- Openボタンを押して2で設定したLevelSequenceを開く(既に開いていたらこの操作はスキップ可)
- 録画対象のActorにBinding Tag Nameと同じ名前のTagを設定する。
Binding Tagの設定方法:https://docs.unrealengine.com/5.0/ja/cinematic-tags-and-groups-in-unreal-engine/ - Output Folder Path に録画結果を出力するフォルダを、Output Asset Name Base にはアセット名を設定
- Recordボタンを押し、Sequencerの再生とアニメーション録画を開始
- 再生し終わると指定の場所に録画アニメーションアセットを保存
制限・注意
サンプル内にあるLevelSequenceのように、単独のLevelSequenceかShotTrackを複数持つLevelSequenceのみを想定しています。そのため、ShotTrackではなくSubSceneTrackで分けている場合は正常に動作しません。もしSubSceneも考慮したい場合はEUWのCollect Shot Track Infosをカスタムしてください。
複数のSkeletalMeshを同時に録画するのは試していませんが、多分うまくいきません。もし実現したい場合はCollect Record Targetをカスタムしてください
ShotTrackごとに録画・出力を行うため、「複数のShotTrackがあっても録画結果は1アセットにしたい」ということはできません。もし実現したい場合は、Collect Shot Track Infosにおける録画時間の設定処理やCheck Finish Record周りをいじればできるはずです。たぶん
おまけ
残念ながら、C++側で実装したUEditorUtilityWidgetの派生クラスはEditorUtilityWidgetアセットのClassSettingsの候補に出てきません。そのため、親クラスを自作のクラスに変えれません。こまった

ただ、EditorUtility系で使えるReparent Blueprintノードを使えば無理やり親クラスを変更できます。EUB_ReparentEUWClassアセットを見てください。

動作環境
UE5.0.3以上
ライセンス
MIT
作者
Related Skills
node-connect
352.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
111.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
352.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
352.0kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
