
Lesson 6.4 - カメラショットごとにポストプロセッシングエフェクトを追加する
Tutorial
Beginner
+0XP
60 mins
(24)
Unity Technologies

この授業では、カメラに特定のポストプロセッシングエフェクトを追加する方法を学びます。カメラごとにポストプロセッシングエフェクトを適用することで、シーン全体に影響を与えることなく、ショットをカスタマイズして独特の見た目やスタイルを実現することができます。また、Vignette ( ビネット) エフェクトの追加、被写界深度の追加とアニメーション化について学習します。
1. 授業概要
2. ビネットを使おう
ビネットエフェクトとは、カメラのショットのエッジを柔らかくしたり、ぼかしたりして、中心に焦点を合わせる効果のことです。
カメラのフレームごとのビューが Game ウィンドウに表示されたままにするには、まず Master Timeline のウィンドウをロックします。そうすれば、タイムラインに沿って Frame Playhead カーソルを配置して、ポストプロセッシングエフェクトの調整をしながらカメラのショットをプレビューすることができます。
1. Hierarchy ウィンドウで Master Timeline のゲームオブジェクトを選択した状態で、右上隅の鍵のアイコンを選択して、Master Timeline のプロパティを表示したままにします(画像 01)。
2. フレーム再生ヘッドのカーソルを、最初の Cinemachine Camera が Game ウィンドウのチェイスシーンのエスタブリッシング・ショットを表示するフレームに合わせます(0 から 80 までの間のフレームであれば、どのフレームでもOK)。
3. 前の授業の ScenePostProcessing ゲームオブジェクトがまだ表示されていて、Inspector ウィンドウでロックされていることに気づくでしょう。鍵のアイコンを選択してロックを解除します。
4. Hierarchy ウィンドウで CM vcam1 を選択した状態で、Inspector で CinemachineVirtualCamera コンポーネントを展開します。Add Extension フィールドを選択し、CinemachineVolumeSettings を選択します(画像 02)。
5. それでは、先ほど追加した Cinemachine Volume Settings Extension に新しいプロファイルを作成してみましょう。New を選択して、Cinemachine Volume Settings コンポーネントの中に新しい Volume Profile を作成します(画像 03)。
6. 次に、Inspector で Add Override を選択し、Post-processing > Vignette の順に選択します(画像 04)。
7. チェックボックスを選択して、Intensity、Smoothness、Rounded を有効にします。Intensity の値を 0.2 に設定します。Smoothness を 0.32に設定します(画像 05)。
3. Depth of Field(被写界深度)の使用
Depth of field(被写界深度)とは、被写体にピントが合ったままの距離のことです。被写界深度が深いと、前景のオブジェクトだけでなく、遠くのオブジェクトも写ります。被写界深度が浅いと、焦点範囲外のオブジェクトが柔らかくなったり、ぼやけたりします。
1. Timeline ウィンドウで Frame Playhead Cursor を Frame 200 に移動します。次に、Hierarchy ウィンドウで CM vcam2 が選択されていることを確認します。
2. CinemachineVolumeSettings Extension を追加する手順を繰り返します。Inspector のドロップダウンフィールドから Add Extension の追加を選択し、CinemachineVolumeSettings を選択します。
3. もう一度、New を選択して Inspector に新しい Profile を作成します。Profile に CM vcam2 Profile(VolumeProfile)という名前を付けます(画像 06)。
4. 次に、Inspector で Add Override を選択し、Post-processing > Depth Of Field の順に選択します(画像 07)。
5. Mode を選択し、Bokeh を選択します。「Bokeh」とは、画像の一部をぼかして残りの部分にピントを合わせる美的効果のことです (画像 08)。
6. Focus Distance を有効にして、カメラから猫の目までの距離がほぼ正確な 2.7 に設定します。この値は、カメラからどれくらいの位置に焦点を合わせるかを決めます(画像 09)。被写体までの距離に応じて、この値を増減させます。
7. Focal Length のチェックボックスを選択します。Focal Length を 230 に設定します。
焦点距離とは、実世界のカメラのレンズとイメージセンサーの間の距離のことです。実世界のレンズでは、焦点距離を小さくすることでオブジェクトを「ズームイン」します。Unit 5.2 で Main Camera の Physical Camera のチェックボックスを有効にし、Virtual Camera のレンズ設定では焦点距離が表示されることを覚えておいてください。ただし、ここでは、Depth of Field の Volume 設定には焦点距離の設定があり、ズームの影響を受けません。その代わり、Depth of Field の Focal Length の値を上げると、結果として得られる画像には、一般的に「チルトシフト」と呼ばれる被写界深度が非常に浅くなる効果が表示されます。
8. シーンの被写界深度に合わせて適度なレベルが良い場合は、Focal Length を 115 に落としてください。
9. Aperture のチェックボックスを有効にします。Aperture を 2.5 に設定します。
実際のカメラでは、絞りはイメージセンサーに到達する光の量を決定します。絞りの値は被写界深度にも影響します。絞り値が小さいほど被写界深度が深く、大きいほど被写界深度が浅くなります。
Frame 200 で猫の外観にぴったり焦点が合っているので、結果として得られる画像は浅い被写界深度をプレビューします(画像 10)。
タイムラインに沿ってさらに進んでいくと、カメラの被写体までの距離が変化し、犬と猫の両方に焦点が合っていないことに気づくでしょう。Focus Distance は Frame 200 を目標とした特定の値に設定したので、時間の経過とともに変化するように Focus Distance の値を調整する必要があります。
4. Focus Offset を使った被写界深度のアニメーション
この授業では、Focus Tracking エフェクトを追加する方法を説明します。このテクニックは、動いている被写体に沿ったショットや、フォーカスが変化する可能性のあるその他の映画のようなエフェクトに特に役立ちます。前回までに、Timeline の Camera Group をアニメーション化しました。Unit 5 で説明したように、タイムラインのトラックグループをアニメーション化するテクニックを引き続き使用します。
2 つ目の Cinemachine カメラを使って、猫に焦点が合っている Frame 200 から作業を続けます。目標は、タイムラインのフレームが進むにつれて、カメラのフォーカスを背景の犬に移すことです。ベストプラクティスとして通例、Timeline ウィンドウの鍵のアイコンが選択されていることを確認して、Master Timeline が表示されていることを確認してください。
1. Hierarchy ウィンドウで CM vcam2 を選択します。ここでは、Cinemachine Volume Settings コンポーネントで定義された 2 つ目のカメラ用に作成したプロファイルを引き続き使用します。この後、新しいプロファイルを作成するには New ボタンを選択するか、既存のプロファイルを複製するには Clone ボタンを選択する必要があるかもしれません。あるいは、以前に保存したプロファイルを復元する必要があるかもしれません。そのためには、Object Loader Circle を選択してから、目的のプロファイルを選択します(画像 11)。とりあえず、Object Loader Circle を選択し、以前に作成した CM vcam2 Profile を選択します。
それぞれの新しい Volume Profile について、Profile 自体はプロジェクトの Assets フォルダーの Assets > Scenes > Unit_06_Profiles に保存されます (画像 12)。
2. Hierarchy ウィンドウで CM vcam2 が選択されている状態で、フォーカストラッキングを有効にするために Focus Tracks Target のチェックボックスを選択します(画像 13)。
3. Offset を 2.7 に設定します(画像 14)。被写体までの焦点距離を設定するには、これまでは Depth of Field 設定の Focus Distance フィールドで設定していましたが、今回は無視できるようになりました。Focus Tracks Target チェックボックスを有効にすると、Offset 値をアニメートできるようになります。
4. Timeline ウィンドウで、+ をクリックして New Track Group を作成し、名前を Post Processing Group とします。新しく作成した Post Processing Group で + を選択して、新しい Animation Track を追加します(画像 15)。
5. CM vcam2 をクリックして Hierarchy ウィンドウから選択し、Timeline の None (Animator) という名前が付いた空の Animation Track フィールドにドラッグします(画像 16)。
6. 赤色の録画ボタンを選択します。Post Processing Group のアニメーショントラックが赤くハイライトされ、トラックが録画中であることを示しています(画像 17)。
7. Focus Tracks Target を右クリックし、Add Key を選択します (画像 18)。
8. フレーム再生ヘッドのカーソルを Frame 280 に進めます。アニメーションのこの時点で、カメラは左にパンし始めます。焦点が変わり始める瞬間にキーフレームを確立するために、Offset の値を少しだけ変更します。Focus Tracks Target Offset を 2.71 に設定します。
9. Frame 290 に進みます。Focus Offset の値を 7 に変更して、犬にピントを合わせます。この値を変更すると、現在のフレーム位置に別のキーフレームが追加されます(画像 19)。フレーム再生ヘッドのカーソルを最初の位置に戻すと、Focus Offset の値が変化しているのがわかります。その後、タイムラインで録画ボタンをオフにして、アニメーショントラックの録画を終了させることができます。
Focus Offset アニメーションでは、猫がシャープなフォーカスで動き出すようになりました。カメラは遠くにいる犬に素早くフォーカスを変えます。タイムラインに沿ってキーフレームを特定の間隔でドラッグすることで、効果の発生速度や徐々に変化を調整することができます。
10. エフェクトをより細かく調整するには、アニメーショントラックの Graph ビューを有効にするように選択します(画像 20)。
11. 個々のキーフレームを選択して左右にドラッグすると、焦点を変更するのにかかる時間を長くしたり短くしたりすることができます。パラメトリック曲線の始点と終点を選択して移動し、曲線の傾きを調整します。
12. 楽しいチャレンジとして、2 つ目のカメラのショットの最初のフレームに猫が入ってくるときに、Focus Offset をアニメーション化してピントを合わせておく練習をしてみてください。タイムラインに沿って Frame 82 までスクラブします。アニメーショントラックを録画に設定して、Frame 82 と Frame 175 の間にキーフレームを追加します。
5. まとめ
Unity でカメラにポストプロセッシングエフェクトを適用すると、各カメラのビューに独自の映画のようなクオリティを提供することができます。ビネットや被写界深度のエフェクトを使ったり、エフェクトを組み合わせたりすることで、カメラのビューに独自の見た目を追加することが可能です。また、タイムラインを使って、時間の経過とともに変化するエフェクトをアニメーション化することもできます。