【Unity】AVPro Movie Capture を使ってスクリーン・カメラを動画に保存する方法

Unityでゲーム内の画面やカメラを対象に動画に保存したい場合に便利なアセットの「AVPro Movie Capture」について紹介します。
このアセットを使用すると簡単な操作でキャプチャーすることができ、Unity Editor上でもビルドしたアプリケーション上でも動作可能なため様々な場面で利用できます。
この記事では、インストール方法から基本的な使い方までご説明します。

環境

  • Windows 10 Home
  • Unity Version 2019.2.17f1

AVPro Movie Capture の対応プラットフォーム

  • Standalone Windows
  • Standalone macOS
  • iOS

AVPro Movie Captureは個別のプラットフォームのみに対応するアセットも別途用意されています。

  • Windows only
  • macOS only
  • iOS only

決められたプラットフォームでしか使用しない場合、上記を購入すればお安く購入することができます。

AVPro Movie Capture のインストール

AVPro Movie Capture アセットの入手

アセットストアから「AVPro Movie Capture」を購入または、無料トライアル版をダウンロードします。

無料トライアル版はキャプチャ映像にウォーターマークが入るだけで動作確認は十分に可能なので、まずはトライアル版を試してみることをおすすめします。

今回はトライアル版を使用する手順を記載していきたいと思います。
(購入する場合でもアセットインポート後は同じ手順です。)

「AVPro Movie Capture」のアセットストアページから「DOWNLOAD THE FREE TRIAL VERSION HERE」をクリックします。

Unity Asset Store AVPro Movie Capture

「Download the Free Trial Version」をクリックして、「UnityPlugin-AVProMovieCapture-Latest-Trial.unitypackage」をダウンロードします。

AVPro Movie Captture 公式サイト

AVPro Movie Capture アセットのインポート

Unity Editorを起動して、 Assets > Import Package > Custom Package をクリックします。

Unity Editor Asset Custom Packageのインポート

ファイル選択ダイアログが開くので、先ほどダウンロードした「UnityPlugin-AVProMovieCapture-Latest-Trial.unitypackage」を選択して開きます。

「Import Unity Package」ダイアログが開きます。
デフォルトの状態のまま「Import」をクリックします。

Unity Editor Import Unity Pckage ダイアログ

以上でAVPro Movie Capture アセットのインポートは完了です。

AVPro Movie Capture のデモシーンの実行方法

AVPro Movie Captureには以下のデモシーンが用意されています。

  • Demo00-ScreenCapture
  • Demo01-TextureCapture
  • Demo02-WebcamCapture
  • Demo03-CameraCapture
  • Demo04-360Capture
  • Demo05-360CaptureODS
  • Demo06-TransparentCapture

上記のデモシーンを試したい場合、Projectビューで Assets > Plugins > RenderHeads > AVProMovieCapture > Demos > Scenes に移動して、シーンファイルをダブルクリックで読み込みます。シーンを読み込んだ後、Unity EditorのPlayボタンを押下することで実行することができます。

AVPro Movie Capture のデモシーンの実行

デモシーンを全て実行してみると、AVPro Movie Capture アセットでできることがわかりやすいと思います。

AVPro Movie Capture の基本的な使い方

AVPro Movie Capture の基本的な使い方として、ゲーム画面全体を動画に保存する方法を記載します。
まず、動画に保存したいシーンをUnity Editorで作成します。
今回は、Cubeが回転するだけのシーンを作成しました。

Unity Editor キャプチャー用シーン作成

次に、 Hierarchyビューから Create > Create Empty の順にクリックして、空のGameObjectを作成します。

Unity Editor 空のGameObject生成

作成したGameObjectを分かりやすい名前にリネームしておきます。
ここでは「Capture」という名前にリネームしました。

Unity Editor GameObjectのリネーム

次に「Capture」を選択した状態で「Inspector」ビューの「Add Component」をクリックします。
すると、検索ボックスが表示されるので「Capture From Screen」と入力して検索結果でヒットしたコンポーネントをクリックして追加します。

Unity Editor GameObject に Capture From Screen コンポーネントを追加

「Capture From Screen」コンポーネントが追加されると以下のような表示となります。

Unity Editor GameObject に Capture From Screen コンポーネントを追加後

Unity Editorで動画キャプチャーする方法

Unity Editor上で動画保存する方法を記載します。
これまでに作成したUnityのシーンを実行してください。
実行後、「Capture」を選択して、「Inspector」ビューの Capture From Screen > Start Capture をクリックします。この操作を行うことにより、ゲーム画面上のキャプチャーがスタートします。

Unity Editor でゲーム画面をキャプチャ開始

キャプチャーを終了するには、「Inspector」ビューの Capture From Screen > Stop をクリックします。

Unity Editor でゲーム画面をキャプチャ終了

また、キャプチャーした動画ファイルの保存場所は「Inspector」ビューの Capture From Screen > Brose Last をクリックすることで開くことが可能です。Unity Editorでキャプチャーした場合、デフォルトでは 「(プロジェクト名フォルダ)/Captures」に保存されます。
また、キャプチャー動画の出力先は設定で変更可能です。

AVPro Movie Capture の動画出力先フォルダ表示

Standalone でビルドして動画キャプチャーする方法

AVPro Movie Capture はUnity Editor上だけでなく、Standalone プラットフォームにビルドしたアプリ内でも動画キャプチャーが可能です。

しかし、前章のUnity EdiotrのInspectorからの操作はできないので、簡単なスクリプトを実装する必要があります。

まず、以下のようなスクリプト(CaptureManger.cs)を作成します。

using RenderHeads.Media.AVProMovieCapture;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CaptureManager : MonoBehaviour
{
    private CaptureFromScreen capture;

    // Start is called before the first frame update
    void Start()
    {
        capture = GetComponent<CaptureFromScreen>();
    }

    public void StartCapture()
    {
        capture.StartCapture();
    }

    public void StopCapture()
    {
        capture.StopCapture();
    }
}

次に、作成した「CaptureManger.cs」スクリプトを「Capture」GameObjectにドラッグ&ドロップでアタッチします。

Unity Editor CaptureManager スクリプトのアタッチ

次に、シーン内に「再生」「停止」処理を呼び出すボタンを設置して、それぞれのボタンのOnClickイベントに「CaptureManger.cs」の「StartCapture()」「StopCapture()」関数を割り当てます。

Unity Editor シーンにキャプチャ用ボタン追加

以上で、ビルドしたアプリケーション上で動画を保存できることを確認できます。

AVPro Movie Capture ビルドアプリの実行画面

また、以下に今回作成したアプリケーションのexeファイルを配布します。
実際の動作を確認した場合、ダウンロードしてください。

(解凍パスワード:chiritsumo)  (容量:約 20MB)

AVPro Movie Captureで録画した動画ファイル

上記動画は無料トライアル版のため、動画に「AVPRO TRIAL」という文字と線のウォーターマークが表示されます。


コメント

タイトルとURLをコピーしました