Unity の ビデオクリップ と Video Player コンポーネントは アルファ (透明度 を指す標準的な用語) をサポートします。
グラフィックス用語では、“アルファ” は “透明度” の言い換えです。アルファは連続値であり、オン/オフの切り替えができるものではありません。
最も低いアルファ値は画像が完全に透明である (まったく見えない) ことを意味し、最も高いアルファ値は完全に不透明である (画像はソリッドで、背景が透けて見えない) ことを意味します。中間値では画像は一定程度透明で、画像と背景の両方を同時に見ることができます。
Video Player コンポーネントは、カメラのニアクリップ面またはファークリップ面でのコンテンツ再生時にグローバルアルファ値をサポートします。ビデオにはピクセルごとのアルファ値を設定できます。つまり、ビデオ画像全体で透明度を変化させることができます。このピクセルごとの透明度の制御は、画像やビデオを生成するアプリケーション (NUKE や After Effects など) で行われ、Unity エディターでは行われません。
一部のプラットフォームでは、透明度を持つビデオのレンダリングに制限があります。詳細は、以下を参照してください。 * Android の要件と互換性
Unity はピクセル単位のアルファを持つ 2 種類のソースをサポートします。
Apple ProRes 4444 コーデック は 4:4:4:4 イメージソース (アルファチャンネルを含む) 向けの高品質版の Apple ProRes です。ソースビデオと同レベルの視覚的な忠実性を提供します。
Apple ProRes 4444 は OSX でのみサポートされます。OSX だけがネイティブに Apple ProRes 4444 を使用できるプラットフォームだからです。通常は .mov ファイルで再生されます。
このコーデックを使用するビデオをインポートするときは、ビデオクリップインポーターの Transcode と Keep Alpha をチェックして両方のオプションを有効にします。OS のビデオ再生ソフトウェアには、ビデオで使用されているコーデックを識別する機能がある場合があります。
トランスコード中に、Unity によってアルファがカラーストリームに挿入されます。そのため、H.264 と VP8、両方で使用が可能です。
トランスコードの処理を省くと、アセットに ProRes を残します。つまり、ターゲットプラットフォームがコーデックをサポートしなければなりません (詳細は、ビデオファイルの互換性に関するマニュアルを参照してください)。
このコーデックは通常は大きなファイルを作るため、ストレージと帯域幅を増加させます。
.webm ファイル形式は VP8 ビデオコーデックと組み合わせると、ネイティブにアルファ情報を持つことができる仕様になります。つまり、この形式を使用すれば、すべてのエディタープラットフォームで透明度を持つビデオを読み込むことができます。
Unity がサポートするほとんどのプラットフォームはこれらのファイルをデコードするソフトウェアを実装しているため、このプラットフォームではファイルをトランスコードする必要はありません。
注意すべき例外の 1 つは Android です。Android プラットフォームのネイティブの VP8 サポートには透明度のサポートが含まれません。トランスコードを有効にする必要があるため、Unity では内部のアルファ表現を使用します。
2017–06–15
Unity 5.6 の新機能