Language:
Page Info
Engine Version:
The translation of this page is out of date. Please see the English version for the latest version of the page.

リアリスティック レンダリング

RealisticRenderingHeader.png

このサンプルでは、アンリアル・エンジン 4 のリアリスティック レンダリングをご紹介します。目標は、VRay や Metal Ray などの CG レンダリング エンジンで作成する、建築レンダリングの外観と雰囲気を兼ねた小さなシーンを作成することです。この例の基本的な条件として、全アセットはゲームに対応できるものである必要がありました。つまり高ポリゴン モデリングを使用できません。これらの手法でユーザーが実際の実用的なゲームを作成できるようにシーン全体を作成しなくてはいけませんでした。

以下のエンジン機能をシーンに活用しています。

  • 物理ベースのマテリアル

  • ライトマスによる事前計算された反射光

  • IES プロファイル (測光ライト) を利用した固定ライト

  • ポストプロセス

  • 反射

背景のスケーリングは、ライトマスおよびポストプロセス両設定に影響を及ぼすことを覚えておいてください。このシーンは、1 センチ単位のアンリアル単位を用いて、1:1 の割合でデザインされています。

利用可能なマップ

この例では 3 つのマップを使用しています。

画像

名前

説明

RealisticRenderingHeader.png

Room.umap

太陽光が窓から差し込むありふれた白昼の部屋の設定です。それぞれの額縁にはライトも配置されています。マップを再生すると自動カメラがフライスルーしてレベルを表示します。これは例で使用しているデフォルト設定のマップです。

RoomNight.png

RoomNight.umap

これはRoom マップと同一のシーンです。しかしこの場合は太陽光がないため、ライティングは主に室内の照明器具から取り入れてます。マップを再生すると自動カメラがフライスルーしてレベルが表示されます。

RoomNightNoLights.png

RoomNightNoLights.umap

この設定ではインテリアの照明が消されています。部屋の隅でランプが 1 つ点灯し、窓から環境光が差し込んでいます。マップを再生すると、懐中電灯が与えられてレベル内を飛び回ることができます。

ライティング

それぞれのマップの全体像に特に重要なのが、現実的な感覚を与えるライティングです。以下は例に組み込まれている 3 つのレベル全てに対するライティングの主要コンセプトの内容です。

マテリアル

UE4 は 物理ベースのマテリアルシステム を使用しています。つまり、「ディフューズ」や「スペキュラ パワー」など多少わかりづらいマテリアルプロパティは、物理的にわかりやすい 「基本色」 や 「ラフネス」プロパティに置き換えられました。これらのプロパティのほとんどは 0 から 1 をベースとし、無駄な浮動小数点数を使用する必要がありません。これは Pixar が開発した RenderMan (レンダーマン) のパッケージで使用しているマテリアルシステムに似ています。以下は基本マテリアルの物理的性質を定義する 4 つの主要プロパティです。さまざまな方法でこれらを結合することによって、現実世界のあらゆるタイプの物理サーフェスを作成することができます。

プロパティ名

サンプル

説明

Base Color (基本色)

ドラッグしてプレビューする

名前が示す通り、オブジェクトの基本色です。以前のマテリアルシステムの ディフューズ に似ています。テクスチャだけでなくカラーを取り入れることもできます。

Metallic (メタリック)

ドラッグしてプレビューする

オブジェクトのサーフェスの「メタリック」感の度合いを制御します。つまり、周りの環境反射がオブジェクトの基本色を打ち消す度合いを制御します。

Specular (スペキュラ)

ドラッグしてプレビューする

オブジェクト上のスペキュラ反射の可視性を制御します。物理的な用語でいうと、サーフェス上に光沢や艶のレイヤーを追加して、基本色を無効化せずにサーフェスへ環境反射を取り入れることができます。高いメタリックの値で表示されます。

Roughness (ラフネス)

ドラッグしてプレビューする

ラフネスはスペキュラ反射のディフューズを制御します。表面全域に「マイクロファセット」効果を適用します。鏡面仕上げのクロムの反射と対比して艶消しアルミニウムの違いを考えてみてください。

UE4 の物理ベースのマテリアル システムに関する技術情報および詳細情報は、 物理ベースのマテリアル を参照してください。

コーヒー テーブルのマテリアル

デモで使用しているほとんどのマテリアルは、概念レベルにおいて比較的簡素化されています。ここでは、コーヒー テーブルのマテリアルに焦点をあてます。このマテリアルを操作する基本概念がシーン内のいくつかのオブジェクトに再利用されているからです。

CoffeeTable.png

コーヒー テーブルのマテリアルは実用的な 2 つの技術を活用しています。最初の技術は、R、G、B チャンネルを使用してオブジェクト上に メタルプラスティック 、 そして 木材 の配置位置を決定するマスク テクスチャを使用するものです。

CoffeeTableMaskTex.png

  1. 赤チャンネル - 木材

  2. 緑チャンネル - メタル

  3. 青チャンネル - プラスティック

  4. RGB - 全 4 チャンネルを組み合わせた結果

これはマテリアル エディタに表示されるマテリアル (M_CoffeeTable_Mat_Inst) のレイアウトです。

クリックして全画面表示する (非常に大きくなります)

マテリアルはたくさんのパラメータを使用しています。つまり、インスタンス化と調整が目的です。実際、これはこのマテリアルで使用している 2 番目に重要な技術です。マテリアルの基本的な設定をしましたが、最後の微調整は行っていません。マテリアルはインスタンス化された後にインスタンス パラメータを使用して調整します。この手法は、調整とその適用の繰り返し作業よりもずっと早く作業が進み、マテリアル作成に要する時間を節約することができます。

CoffeeTableMat_Properties.png

反射

このデモは特定のオブジェクトを際立たせるために反射をフル活用しています。UE4 は反射を様々な方法で処理しています。

  • Screen Space Reflections(スクリーン空間の反射) - Screen Space Reflections は UE4 のエンジン機能で、初期設定では可視化されています。主に角の端付近で見えます。反射環境と反射キャプチャが連携して作用し、シーン反射の全体の雰囲気を作ります。

  • Reflection Environment and Reflection Captures (反射環境と反射キャプチャ) - UE4 は現実的な反射の作成に反射キャプチャを活用しています。これらは背景の球状やキューブ形状のキャプチャを作成するレベルに戦略的に配置されたアクタを経由して作成されて、その後半径内の反射オブジェクト上に投影されます。この画像は、いくつかのオブジェクトに正確な反射効果を与えるために配置された Reflection Capture アクタを表示しています。

    ReflectionCaptures.png

カーペットのオブジェクト

CarpetObject.png

この例で特筆したいのは、部屋の中心の床に配置されているカーペットのオブジェクトです。このアセットは、厚みのあるラグマットの外観および質感をシミュレートしています。このセクションでは、アセットの作成方法を一般的な用語を用いて細かく見ていきます。

モデル

ラグマットのオブジェクトのモデルは、このエフェクト作成の重要な側面のひとつです。モデルは、外側周囲に曲線的なトリミング エッジを持つ 4 つの平面形状を積み重ねて構成されています。積み重ねられた形状はマテリアルと合わせて体積があるという錯覚をもたらし、繊維質のエフェクト効果を与えています。以下の図形はモデルの断面ですが、分解して各レイヤーを示しています。

CarpetModelDiagram.png

CarpetModel.png

マテリアル

カーペットのマテリアルは、乗算したバンプ オフセットを利用して、4 つの独立したステージへ付加されています。4 つのステージは、積み重なった 4 つのジオメトリを乗算して、合計 16 「層」の効果を生じています。バンプ オフセットは実際には負の方向へ実行しています。繊維質が表面へ向かって後退する感覚を与えています。このマテリアルはたくさんのパラメータを使用し、カスタマイズが可能です。

CarpetMaterial.png

以下のマテリアルをカーペットに利用しています:

  • M_Carpet_Mat

  • M_Carpet_Mat_Inst