トップ > レンダリング > Blender Renderでレンダリングしてみよう >
環境光で暗すぎる部分を明るくする(その3)

  

環境光を当てて暗い部分を明るくしてみよう(続き)

前の記事の『環境光で暗すぎる部分を明るくする(その2)』からの続きです。 この記事では、環境照明(Environment Lighting)の機能を使ってみます。

環境照明で環境光を表現してみよう

環境照明は、アンビエントオクルージョンと同じく環境光を表現するための計算手法です。 レンダリング結果も、アンビエントオクルージョンとよく似ています

アンビエントオクルージョンとの違いは、

  1. 環境光の色を選べる(白色または空の色または空のテクスチャ画像)
  2. Blend Modeは選べない(Addと同様のブレンドで固定)
  3. マテリアルごとに影響度を調整できる

です。 つまり、アンビエントオクルージョンのBlend Modeの "Multiply" のように暗くすることはできないため、明るくするために利用します

ここでも、前の記事と同じように実験用シーンを元に解説します。 画面上部のプルダウンメニューの"File" -> "Open"を実行して実験用シーンのファイルを開きます。

  
実験用シーンは、レンダリング > Blender Renderでレンダリングしてみよう > 実験用シーンの作成で作成しました。 まだ作成していない場合は、そちらの記事を参考にして作成してください。
  
開いた実験用シーンを上書き保存しないよう注意しましょう。 Windows上(またはLinux上)でファイルをコピーしたものを開くのがいいかもしれません。

まずは、レイトレーシングを有効にする必要があります

1. レイトレーシングを有効にする
1. レイトレーシングを有効にする

上図のようにPropertiesウィンドウのレンダーパネル切替ボタンでレンダ関連のパネル群に切り替え、ShadingパネルにあるRay Tracingチェックボックスをオンにします。

  
おそらく初期設定でレイトレーシングは有効になっていると思います。 Blender 2.37からはレイトレーシングは初期設定で有効になっています。

標準レンダリングエンジンのBlender Renderはスキャンライン方式でレンダリングを行いますが、レイトレーシングも併用することができます。 レイトレーシングを併用することで、

  1. アンビエントオクルージョンによる擬似環境光
  2. 環境照明による擬似環境光
  3. 反射による映り込み
  4. 半透明による透過
  5. 他の物体による影

の機能が使えるようになります。

  
ワールドのGatherパネルにあるGather Methodを "Raytrace" から "Approximate" に切り替えると、レイトレーシングが無効でも『アンビエントオクルージョン』と『環境照明』の機能が使えるようになります。 ただし、近似値での計算となるため精度が落ちます。

続いて、仮想世界の色を設定します。

2. 仮想世界の色を設定
2. 仮想世界の色を設定

上図のようにPropertiesウィンドウのワールドパネル切替ボタン(ワールドパネル切替ボタン)でワールド関連のパネル群に切り替え、仮想世界の色を設定します。 WorldパネルのHorizon Colorに青色、Zenith Colorに緑色、Ambient Colorに赤色を設定し、さらにBlend Skyチェックボックスをオンにします。

なお、アンビエントオクルージョンと違って、Horizon Color と Zenith Colorで設定した色が反映されます。 ただし、環境光の色(Environment Color)に "Sky Color"(空の色) を選択している場合に限ります。 Environment Colorが "White"(白色) の場合は、Horizon Color と Zenith Colorの影響はありません

また、アンビエントオクルージョンと同じく、Ambient Colorの影響は受けません

  
アンビエントオクルージョンでは環境光は白色として計算されましたが、環境照明では "White"(白色) か "Sky Color"(空の色) "Sky Texture"(空のテクスチャ画像) から選ぶことができます。
  
Environment Colorに "Sky Texture"(空のテクスチャ画像) を設定するとワールドで設定した背景画像の色が反映されます。

続いて、環境照明を有効にします

3. Environment Lightingチェックボックスをオンにする
3. Environment Lightingチェックボックスをオンにする

上図のようにEnvironment Lightingパネルの同名のチェックボックスをオンにし、Environment Colorの選択リストに "White" を選択します。

では、レンダリングしてみましょう。 キーボードのF12を押してください。

4. レンダリング結果
4. レンダリング結果

上図のようにアンビエントオクルージョンでBlend Modeを "Add" にした場合のレンダリング結果と同じに見えます。

  
筆者が試した限り、現在の設定ではアンビエントオクルージョンでBlend Modeを "Add" にした場合のレンダリング結果と全く同じになります。

なお、立方体やスザンヌや平面が赤色に染まっている理由もアンビエントオクルージョンと同じです。 環境照明の計算結果をもとにシェーダで陰影計算が行われ、その結果にAmbient Colorの色が加算されているというわけです

続いて、Environment Colorに "Sky Color"(空の色) を設定してレンダリングしてみましょう。

5. Environment ColorをSky Colorにする
5. Environment ColorをSky Colorにする

上図のようにEnvironment LightingパネルのEnvironment Colorの選択リストに "Sky Color" を選択します。

では、レンダリングしてみましょう。 キーボードのF12を押してください。

6. レンダリング結果
6. レンダリング結果

上図のようにHorizon ColorとZenith Colorの影響を受けていることがわかります

なお、平面が黄色くなっているのは、Zenith Colorの緑色とAmbient Colorの赤色が足されているからです。

現在の設定では、Ambient Colorが強すぎて "Sky Color" の効果がよくわかりません。 Ambient Colorを暗くしてレンダリングし直してみましょう。

では、Ambient Colorを暗くしましょう。

7. Ambient Colorを黒色に設定
7. Ambient Colorを黒色に設定

上図のようにWorldパネルのAmbient Colorに黒色を設定します。

では、レンダリングしてみます。 キーボードのF12を押します。

8. レンダリング結果
8. レンダリング結果

上図のように下向きの面や横向きの面はHorizon Colorの影響を、上向きの面はZenith Colorの影響を受けていることがわかります。

では、Ambient Colorを赤色に戻しておきましょう。

9. Ambient Colorを赤色に設定
9. Ambient Colorを赤色に設定

上図のようにWorldパネルのAmbient Colorに赤色を設定します。

続いては、マテリアルごとに影響度を調整してみましょう。 立方体や平面への影響度は今まで通りとし、スザンヌの影響度を 20% にまで落としてみましょう。

まずは、対象のメッシュオブジェクトを選択します。

10. スザンヌを選択
10. スザンヌを選択

上図のようにスザンヌを選択します。

続いて、マテリアルの環境照明からの影響度を設定します。

11. マテリアルパネル切替ボタン
11. マテリアルパネル切替ボタン

上図のようにPropertiesウィンドウのマテリアルパネル切替ボタン(マテリアルパネル切替ボタン)を押します。

12. ShadingパネルのAmbient を 0.2 に
12. ShadingパネルのAmbient を 0.2 に

上図のようにShadingパネルのAmbientを0.2に設定します。

  
Ambientには環境照明の影響度を 0.0 から 1.0 の範囲で指定します。

では、レンダリングしてみましょう。 キーボードのF12を押してください。

13. レンダリング結果
13. レンダリング結果

上図のようにHorizon ColorとZenith Colorのスザンヌへの影響が小さくなっていることがわかります

  
ShadingパネルのAmbientの値は、WorldパネルのAmbient Color(周辺光の色)にも影響します。
  
まとめると、周辺光には影響し、アンビエントオクルージョンには影響せず、環境照明には影響するということになります。

アンビエントオクルージョンとの併用

この記事で紹介した『環境照明』と、前の記事で紹介した『アンビエントオクルージョン』は併用することができます

実は、Blender 2.4系までは環境照明の機能はありませんでした。 一方、アンビエントオクルージョンの機能はBlender 2.4系にも搭載されており、環境光の色に "Sky Color" や "Sky Teture" を選ぶことができていました。

つまり、『環境照明』と『アンビエントオクルージョン』は、Blender 2.4系までは『アンビエントオクルージョン』という1つの機能だったのです。

それが、Blender 2.5系で分離され、『環境照明』と『アンビエントオクルージョン』に分かれました

別の機能に分かれたことで併用できるようになりました。 というよりも、併用できるように分けられたのかもしれません。

なお、併用する場合は、アンビエントオクルージョンのBlend Modeは "Multiply" に、環境照明のFactor は小さい数値 ( 例 : 0.1 ) にするのがいいでしょう。 環境照明で暗い部分を明るくし、アンビエントオクルージョンで隅や凹んだ場所を暗くします。

  
  

まとめ

環境照明は、アンビエントオクルージョンと同じく環境光を表現するための計算手法です。 ただし、アンビエントオクルージョンのBlend Modeの "Multiply" のように暗くすることはできません。

なお、環境光の色は、白色だけではなく背景色(空の色)を指定することもできます。

また、マテリアルごとに環境照明の影響度を設定することができます。

 
メニュー