【Unity】Unityで360度動画&画像を作る方法【Unity Recorder】

アルミというものです

幅広いゲームや、アプリ開発で使用されているUnityというゲームエンジンを使用して、360度動画の作成をしてみました

ゲーム映像をキャプチャするというやり方で360度動画が作成出来たので、詳細をまとめていきたいと思います

テスト環境

Unityは以下のバージョンでテストしてみました

・Unity(2019.3.9f1)

特に指定は無いのですがUnityは可能であれば新しいバージョンを使用した方が良いと思います

シーンの作成

始めにUnityのプロジェクトを作成し、撮影用のシーンを用意します

シーンの作り方やオブジェクトの配置方法については省略しますが、

それぞれ好きなようにオブジェクトや光源を配置し、シーンを作成してください

上記画像は部屋の3Dモデルとライト、カメラのみを設置しています

シーンの用意が終わりましたら、

最後にカメラオブジェクトが一つ配置されていることを確認してください


Check Point

撮影前にカメラオブジェクトのタグを確認してください

『MainCamera』タグが付いているカメラが撮影用のカメラとなります

自分で新たにカメラを追加した場合などに、このタグ変更を忘れる事もあるので一応確認

Unity Recorderの導入

360度動画を撮影するためにはUnity内のゲーム映像をキャプチャする必要があります

そのために『Unity Recorder』と呼ばれる機能を追加します

以下が手順の説明になります


1.Unityの上部メニューより『ウィンドウ』 > 『Package Manager』を選択しウィンドウを開きます


2.『すべてのパッケージ』であることを確認します

3.上部メニューより『Advanced』 > 『Show preview packages』を選択します


4.少し待ち、左側の一覧より『Unity Recorder』を探します(結構下の方)

5.Unity Recorder』を選択後、Installをクリックします


以上でUnity Recorderの導入は終了です

インストール後はPackage Managerは閉じても大丈夫です

続けて簡単な操作説明に入ります

Unity Recorderの使い方

導入したRecorderを表示させます

メニューから『ウィンドウ』 > 『一般』 > 『Recorder』 > 『Recorder Window』を選択します


このままだと使用できないので、『Add Recorder』をクリックします

ここで何をキャプチャするかの選択肢が表示されます

今回は動画のキャプチャが目的のため『Movie』を選択します

※画像のキャプチャをしたい場合は『Image Sequence』を選択してください

選択すると右側に項目が表示されます

※複数設定を追加した場合は左側にあるチェックで撮影の有無を変更できます


今回は360度動画を撮影したいため、各項目の設定を以下のように変更してみました

360度動画用の設定

Recording Mode : Time Interval(sec) (秒数を指定してキャプチャ)
Start : 0, End : 30 (開始から30秒までを撮影)

Capture
Source : 360 View (※必須)
Output Dimensions W : 4096, H : 2048
Record in Stereo : チェック外す (※必須)

Format
Media File Format : MP4
Quality : 高

Output File
File Name : 適当
パス : 分かりやすいところ

必須以外の設定項目についてはそれぞれ目的にあったものを選択してください

Check Point

Output Dimensionsに入力する値は2の累乗の値でないと撮影出来ないようです。

任意のサイズにしたい場合は一度大きいサイズで撮影をして、その後加工をするという必要が出てきます。

参考までに2の累乗となる値を一部載せておきます

2の累乗となる値) 512, 1024, 2048, 4096, 8192 …


360度画像の場合は以下のように変更してみました

360度画像用の設定

Recording Mode : Single Frame
Target Frame : 0 (0フレーム目)

Capture
Source : 360 View (※必須)
Output Dimensions W : 4096, H : 2048
Record in Stereo : チェック外す (※必須)

Format
Media File Format : PNG
Include Alpha : チェック無し

撮影してみる

設定を変更したら撮影を開始します

撮影は左上の『START RECORDING』をクリックすることで始まります

停止は同様に『STOP RECORDING』をクリックすることで止まります

Check Point

Exit Play Mode の機能紹介
チェックを入れることでRecording Modeでの撮影が終了したら自動的にゲームの再生が停止されるようになります
秒数やフレームを指定して、特定の個所だけ記録したいという時に便利です

出力ファイルの確認

撮影されたファイルはOutput Fileで指定したパスに保存されます

デフォルトだとUnityプロジェクト内に『Recordings』というフォルダの中に保存されるようです

保存先やファイル名を変更したい場合は設定の中にあるOutput Fileから行えます


保存したファイルを確認するとこのような感じの動画もしくは画像が出来上がります

まとめ

以上でUnityで360度動画&画像を作る方法について紹介をしました

何とか手軽に360度動画を作る方法はないかと調べるうちにこんな方法にたどり着きました

ゲーム映像をキャプチャし、それを映像作品として使用するという発想はあまり思い浮かばなかったので、初めて知ったときは衝撃を受けました

これもゲーム映像のクオリティが上がったことによって成せる技という事なのでしょうか

今まで100時間以上レンダリングに時間をかけていたのが、これで幾分か楽になりそうです

コメント