LoginSignup
5
2

More than 5 years have passed since last update.

Spineデータを映像出力する

Last updated at Posted at 2016-12-19

Spineとは

公式ページによると、

Spine は 2D アニメーション専用に開発されたソフトウェアで、魅力的なアニメーションの作成、そして完成したアニメーションのゲームへの統合に効率的なワークフローを提供します。

という説明の通り、2D静止画イラストをアニメーションさせるツールとなっている
Unityなどのゲームエンジンに組み込める利点から様々なゲームスタジオで採用されており、主に海外では多くの採用実績がある
特徴としては

  • ボーン制御
  • IK
  • メッシュによる様々なデフォメーション

などが挙げられる
あまりガッツリと触っているわけではないのだが、シンプルなボーン制御は結構イイね、と思った
Spine 2016-12-19 13-48-12-790.gif

日本のゲームスタジオでも採用されているような昨今、最近自分のところに来た案件で
「Spineで作成されたキャラクターデータをPVなどの映像に使用したい」というものがあった
その際にちょっと引っかかった「映像出力について」記したい

Spineの映像出力

例えばLive2Dには「AfterEffects用プラグイン」が用意されており、映像との組み合わせは割とすんなり行くのだが、Spineの場合はそのようなプラグインが用意されておらず(というか用意しているLive2Dが特殊例なのだが)、何かしらの「映像」として出力(エクスポート)しなければならない

だが、Spineには「エクスポート用のオプションがほとんど存在しない
特に普通ならありそうな「出力する解像度の設定」が無いので、基本的にエクスポートされる映像の解像度は
オブジェクト全体の解像度(キャラクターの大きさ)
になる。3000 x 3000pxのキャラクターデータならば3000 x 3000pxの映像が出力される

大きく引っかかりそうな点としては
- RGBAで出力出来ない (v3.6.1.5で改善され、アルファの出力が強化されました)
- 出力範囲を指定できない(フレームでここからここまで、のようなやつ)
以上の2点だろうか

WS000042.JPG
見よ、このシンプルなエクスポート画面を

結論

一番手っ取り早いのは

  • QuickTime Animation
  • QuickTime RAW

の2つになると思われる。pngは現状安定していない。更にメチャクチャ処理が重い。

--(※20170421追記)--

以下はv3.6.1.5で改善され、アルファ付きの出力が出来るようになったので、映像用途ではアルファ付きで出力することをオススメします

--追記ここまで--

アルファについては

  • 背景を緑一色なりにしてキーイング処理を行う

という原始的やり方で処理するのが今のところいいのかなと。
キャラクターによっては「半透明」なオブジェクトがあったりして、これも一概にベストソリューションでは無かったりする。その際は「半透明オブジェクトだけ出力する」などの工夫で乗り切れると思う。
test [f0007](1).png

ちなみにFPS指定は30だろうが60だろうがソフト側で勝手に補完してくれるので、スロー処理などをしたいならば60、120などを指定しておくとよい。

たまに起きる問題として、いざエクスポートしようとしても「本来出力されるはずの解像度」でエクスポートされない時がある。3000 x 3000px解像度のキャラクターアニメーションをエクスポートしたら何故か「巨大な黒い空間の中央にポツンとキャラクターがいる」映像が出力されるのだ。
現バージョンだとほとんど起きないようだが、それでもたまに起きる時があるので解決方法として

  • 全てのタブ(パネル)を閉じた状態でキャラクターを100%表示してエクスポート

というのを行うと問題が解決されるので、もし困ってしまった際は試して頂きたい

以上となっております

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2