akyboxブログ

旧AkiIroブログ

Unityで360PanoramaCaptureを使って360度動画をつくってみた話

はじめに

筆者は360度動画からスタートしたので、まず360度動画って何よってところから下のサイトを参考にさせていただきました。 360度映像制作ガイド 今回は360PanoramaCaptureというアセットを使わせていただきました。無料、ありがたいです。 f:id:AkiIro:20160830220413p:plain 普通にUnity上でモデルを動かしてアニメーションをする場合と比べて、 360度動画にするメリットとデメリットを自分なりに列挙すると以下のような感じです。

メリット

  • ツールによってはアーティストが今まで使っていたものが使える(ex.Blender)
  • アーカイブ性が増す
  • 使いまわしやすい
  • ストリーミング可能(Unityでビルトイン対応はしていない)

デメリット

わかったこと

360度動画は普通の動画を曲げている

イメージとして360度動画では一枚の動画を曲げて球に貼り付けています。したがってユーザーから見える画面の画質は元の一枚の動画の画質に左右されます。 例えば元の動画の画質が4000×2000だとしても見えている部分が1/4なら画質は1000×500相当になるようで、画質が低くなりがちです。

Unity上だと再生にQuickTime(2016/8 現在Win版がない)が必要

Unityで真っ当にbuilt-inの機能で動画を再生するにはMovieTextureというものを使うのですが、これの使用にはQuickTimeというプログラムがインストールされている必要があります。現在、Windows版はありません。参考

やりかた

自分なりのやり方なので、他にやり方はたくさんあると思います。 一応このやり方で無料でできます。注意としてMovieTextureを使うためMacが必要です。自分はMacでビルドしてWindowsにOculusを繋いで見ました。今回はテーマから外れますが、作った動画はyoutubeに公開したりもできます。その際は公式のサポートを参考にしてください。 手順としては

  1. 360 Panorama Captureを使ってUnity上でキャプチャ(jpgかpngで出力)。そのあたりは付属のReadMeにしたがって行います。首尾よく大量の画像を手に入れたら次に進みます。
  2. 所望の方法で動画形式に。例えばムービーメーカーとかです。そのあたりはこちらを参考に。
  3. Unity上でMovieTextureを使って再生する。そのあたりはこちらを参考に。

一応作った動画をアップしておきます。 www.youtube.com

2016/09/09追記

黒い穴ができていたのでその解決法を、、 アスペクト比の問題のようなので公式のサポートを参考に 最高画質の4k(3840x2160)で作ったものがこちらになります。


【MMD】UnityでドーナツホールをVR化してみた【VR】

ちなみにこちらはffmpegを使いました。

初心者も初心者ですが参考になれば幸いです。