Unity MovieTexture (VR panorama) tips

2dea59f12b07aa47a8604dc21ba27036?s=47 izm
October 29, 2016
8.1k

Unity MovieTexture (VR panorama) tips

2016/10/29 DCExpo #JVRFest

2dea59f12b07aa47a8604dc21ba27036?s=128

izm

October 29, 2016
Tweet

Transcript

  1. Unity動画再生周りの tips集 Twitter @izm 絵麻さんを養って幸せな家庭を築く

  2. 自己紹介 2016/1より上京してVR系エンジニア 「Unity 本」でググれ

  3. 何作ってたの 他複数のHMD向けパノラマ動画案件をやってます…

  4. agenda  Unityにおけるパノラマ動画の再生方法  EasyMovieTexture  MediaDecoder  Tips集 

    ステレオ動画の限界解像度  iPhone6で4k動画  各アセットの罠
  5. Unityによるパノラマ動画再生  アセットを使おう  歴史的な経緯により Unityのムービーテクスチャはあまり便利ではない…  VR向けのおすすめ動画再生アセット  PC(Windows)

    MediaDecorder(ViveSoftware) 無料  Android iOS (GearVR) EasyMovieTexture 65ドル  とりあえず普通の人はこれで大丈夫です  8k動画とか6k動画はいろいろ考えないと…  AVPro WindowsMediaさんが終わり、後継のAVProVideoが出ました
  6. EasyMovieTextureは神  65ドル  頻繁なアップデート(作者が親切)  iOS Android Standalone(Windows)をフルサポート(windowsいけるんです よ)

     最新版はUnity Editor上で動画再生プレビュー出来る  Androidのネイティブプラグインのソースコードがzip同梱(めっちゃ嬉しい)  Standalone及びUnityEditor(Windows)はffmpeg利用 →StandAloneで使うとしても、後述のVive社のMediaDecoderとほぼ同等性能  塩パスタを食べてでも65ドルを払う価値あり
  7. MediaDecoderは神  無料  これが無料はやばい(ただしWindows限定)(DX11NativeTexturePtr利用)  FFmpegベースのデコード(DirectShowフィルタよりコードベースが新しい)  DirectShowフィルタを使うと、アプリ配布する時めっっっちゃ困る… 

    8k再生はGeforceGTX10x0(Pascal GPU)でH265の8k30FPSまで動きました  スマホやGearVRを考えないならこれで十分かも
  8. Tips集

  9. 動画の限界解像度  3840x1920じゃなくて3840x2160で出しても良い  2:1のアスペクト比はequiangularな出力の都合  Unity上でUVがちゃんとしてる球なら問題なく再生できます  @warapuriさんのSphere100.fbxを使おう(UnityのSphereは上と下がUV歪んでる…) 

    Top-Bottomステレオ動画の解像度限界  2048x2048←まちがい。粗いです。  3840x2048←左目用を3840x1024 右目用を3840x1024で出力してTop-Bottomに詰め込み ましょう。なんとかなります。明らかに2048より綺麗です
  10. iPhone6で4k再生  公式にはiPhoneの4k再生サポートはiPhone6S以降(A9以降)  しかし一部アプリでiPhone6及びiPhone6Plus(A8)で4k再生がある  →ffmpegでH264でProfileをBaseLine4.2指定しつつ解像度を3840x1920 に指定してエンコードするとEasyMovieTextureで再生出来ました  こういうヘッダ偽装とか横着な使い方が許されるffmpegは神

  11. 各アセットの罠  AVProVideo(ver 1.44)→めっちゃちゃ高い割に  本体同梱のFilterで8k動画再生不可  DirectShowFilter再生モードでLAV Filterを入れれば再生可能 

    8k30FPS再生時に原因不明のパフォーマンススパイクが起きてた  Unity ProfilerでCPU UsageとGPU Usageを調べてWaitForPresent(VR版) と か GFX.WaitForPresentがCPUの大部分を占めてたら「CPUが暇している が GPUというか動画デコードがカッツカツ」です。
  12. 各アセットの罠  ViveのMediaDecoderは8kサポートを謳っているが、PascalGPUで 8k30FPSまでしかサポートしてない気がする…  現在のver1.04は微妙なはずれアップデートっぽいので1.02の方が良い。 (もしくはバージョンアップ待ち)  そもそもGeforce GTX

    9x0系はffmpegをデコードに利用すると4k60FPS くらいが限界なので、8k再生案件は気を付けて請けましょう…
  13. 各アセットの罠  動画再生系アセットは玉石混交  今回おすすめに入れていないアセットは、結構危ないもの多い…  まずは、EasyMovieTextureにしましょう。いざというとき AndroidNativePluginのソースから書き換えられます!

  14. 撮影機材  Theta 4k版期待してます  2眼式パノラマカメラは分厚くなるほど近距離のスティッチ痕が目立つの でTheta最高  Sp360 4k2個のリグを付属ソフトではなくAutoPanoで書き出すと4kどこ

    ろか6k(2880P)まで出せるのでコスパ良い機材です
  15. おわり  パノラマ動画再生沼たのしいよ!!!!!!!!!!

  16. 便利コード