sunarit’s blog

Unity開発の備忘録

uSequencer vs Cinema Director

Unityでカットシーン(いわゆるムービー)を作りたいと思うことがあります。
タイミングを調整しながらイベント実行のスクリプトをコツコツ書くのもアリですが、エディタとランタイムを行き来する必要があり、試行錯誤が大変で時間がかかってしまいます。
その辺を楽にしてくれるのがカットシーンエディター系のアセットです。
有名どころではuSequencerが挙げられますが、それ以外にもCinema DirectorFluxなどいくつかあります。
いずれのカットシーンエディターにも共通して、タイムラインが利用できる点が特徴です。
タイムラインを使用すれば実行するイベントのタイミングを視覚化できるので、スクリプトで書くよりも断然楽になります。
というわけで、uSequencerとCinema Directorをどちらも1週間ほど実際に使用してみました。
なお、uSequencerには「Source uSequencer」と「uSequencer」の2つのバージョンがあります。「Source uSequencer」にはソースコードが付属しており、「uSequencer」はコア部分がコンパイルされたDLLとなっています。今回の比較で使用したのはDLL版の「uSequencer」です。
ちなみに、価格ですが、
・uSequencer - 45USD (Source版は 150USD)
・Cinema Director - 60USD
となっています。どちらも、いつか使うだろうと思い、セールの時に購入していました。

なお、比較した各バージョンは以下のとおりです。
・uSequencer 1.3.9.1
・Cinema Director 1.4.0.6

【使いやすさ】
uSequencerの方が直感的にすぐに使えました。
Cinema Directorは、動かしたいオブジェクトに合わせて、Actor Group、Character Groupなど適切なグループをあらかじめ追加してから設定する必要があります。いわゆるCinema Directorならではの「お約束」です。実際に使う前にドキュメントをよく読んでおかないと、何をしていいのか戸惑います。
uSequencerはそういった「お約束」は極力排しており、とりあえず動かしたいオブジェクトをエディタウィンドウに放り込んだらタイムラインで右クリックするだけでイベントの設定が可能です。
また、uSequencerにはショートカットキーが用意されていますが、Cinema Directorにはショートカットキーはほとんどありません。操作性という部分ではCinema Directorは頻繁にマウスを動かさなくてはならず、不便に感じました。

【機能】
どちらも簡単なカットシーンを作る上での基本的な機能に関しては揃っています。
uSequencerにはシーン上でパスを作成する機能があったり、複数の音声ファイルを1トラック上で同時に再生できる、さらにはMecanimステートメントをプルダウンリストから選択できる等といった基本的な機能が洗練されています。
Cinema Directorを触っていると「あ、これできないのか」ということがたまにありました。

【安定性】
今回、この「安定性」という部分が非常に重要だと感じました。正直に言って、uSequencerはこの安定性という部分で非常に疑問が残ります。と言うのも、頻繁にエディタウィンドウが使用できなくなったためです。使用できなくなる度に、再度、エディタウィンドウを立ち上げなくてはならず、フラストレーションがたまります。uSequencerの開発者にはこのバグの再現手法も含めて連絡してあり、「次のバージョンで直すよ」と返信を貰っていますが、あまり頻繁にアップデートをしていないこともあり、どこまで信頼していいのか分かりません。
Cinema Directorにもクラッシュする等のクリティカルなバグはありますが、連絡すれば1、2週間程度で直してくれますし、場合によっては修正したバージョンをアセットストアでのバージョンアップ前に貰えるなど、サポートという部分では信頼できます。最悪、ソースコードがありますので自分で直すことも可能です。Unity側の仕様変更により、いくつかの機能が使用できなくなっているのに気づきましたが、簡単なものは自分で修正しました。これもソースコードがあるから可能なのです。
uSequencerもSource版の方を購入すればいい話なのですが、アップデート頻度の低さを考えると、150USDという高めの価格を払う気になれません。

【結論】
Cinema Directorに軍配があがると思います。ただ、結構、バグが存在していることもあり、諸手をあげてオススメできないのが本音です。また、どちらのアセットにも共通して言えるのが他アセットとの連携が弱いというところです。開発方針として、音声ファイルのコントロールはMaster Audioで、Tween系はLeanTweenで、といった決め事がある場合、オリジナルのカスタムイベントを作成しなくてはなりません。幸いにも簡単に作成できるようにはなっていますが、逆に言えば、ノースクリプトではできることが限られてきます。
カメラコントロールや基本的なキャラクターアニメーションはCinema Directorで、IKやシーンの分岐制御の作り込みはスクリプトで、というのが、現状、最も良い使い方かなと思います。
なんにしろ、「これ1本で何でも」というような多大な期待は禁物だと感じました。

今回はDLL版のuSequencerとCinema Directorを比較しましたが、DLL版ではなくSource版のuSequencerで比較した場合、また違った結果になるかもしれません。その辺はご理解ください。

【Unity5対応】
uSequencer
Source uSequencer
Cinema Director