210
Lightmass Deep Dive #2 建築ビジュアライズにおける Lightmass実践使用方法

建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Embed Size (px)

Citation preview

Page 1: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lightmass Deep Dive

#2 建築ビジュアライズにおける

Lightmass実践使用方法

Page 2: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

建築ビジュアライズ制作者

ま かや けん いち

真 茅 健 一

Page 3: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

活動内容

• 2008年よりフリーランスとして建築パースを制作

• UnrealEngine4の一般公開後まもなくより、UE4で建築コンテンツを制作

Page 4: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

このセッションで使うシーンデータ

フォーラムサンプル引用元

https://forums.unrealengine.com/showthread.php?

88952-Lets-make-Lightmass-EPIC-(and

-understandable)&p=413678&viewfull=1#post413678

Casa Barragan

メキシコの建築家

ルイス・バラガンの自邸

Page 5: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

https://youtu.be/Y7r28nO4iDU

Page 6: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

検証用マシン

• CPU Core i7 4790K 4コア

• メモリ 16GB

• GPU GTX770

Page 7: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

このセッションのテーマ

Page 8: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lightmassでのディティールアップとモヤモヤ対策

Page 9: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 10: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 11: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 12: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 13: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 14: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 15: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 16: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 17: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 18: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 19: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 20: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 21: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 22: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 23: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 24: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 25: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 26: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 27: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 28: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 29: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 30: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 31: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 32: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 33: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

普通にライトを置いてProduction設定

Page 34: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終設定

Page 35: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

やわらかな間接光の表現

Page 36: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ゲームでの最適化とはおそらく異なります。

Page 37: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

おしながき

1. 使用ライトの選定

2. シーンセットアップ

3. テストライティング

4. ライティングエスキス

5. 最終ライティング

6. Lightmass Deep Dive

Page 38: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

1.使用ライトの選定

Page 39: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

4つのライト

•Directional Light

•Point Light

•Spot Light

•Sky Light

Page 40: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ライトの可動性はStatic か Stationary

Page 41: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Directional LightとSky Lightをメインに設計

しかし問題点が…

Page 42: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

間接光が回り切らない

Page 43: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

SkyLightは間接光のバウンスが一回しか計算出来ない

Page 44: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

スカイライトの弱点

スカイライトのみでライティング

Page 45: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

スカイライトの弱点

間接光が回り切らない

Page 46: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

フォトンがでないから

Page 47: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

フォトンがでるライト

• Directional Light

• Point Light

• Spot Light

フォトンがでないライト

• Sky Light

Page 48: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

窓からの柔らかい間接光を表現したい

Page 49: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

窓にスポットライトを置いてみる

Static Spot Light SourceRadius 100 (直径200cmの球体からのエリアシャドウ)

Page 50: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

光も影も硬い。

Page 51: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Koola式バウンスカードを採用しました

Page 52: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Koola式バウンスカードとは

やわらかい光の表現をしつつ複数回の間接光のバウンスに対応できる

Page 53: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Koola式 バウンスカードサイズ 200x200cm

Page 54: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Spot Light SourceRadius 200

Page 55: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

バラガン邸で使用したメインのライト

• Directional Light

• Sky Light

• Koola式バウンスカード

ひとまずこの方針でいくことに

Stationery

Static

Static Spot Light

Page 56: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

2.シーンセットアップ

Page 57: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lightmass Importance Volumeの配置

Volume Lighting Samplesの配置範囲を指定

Page 58: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lightmass Portal

ファイナルギャザーの際にどこを重点的に計算するべきか教える

Page 59: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

SkyLightの品質が改善

Portalあり

Page 60: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

SkyLightの品質が改善

Portalなし

Page 61: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

SkyLightの品質が改善

Portalあり

Page 62: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

SkyLightの品質が改善

Portalなし

Page 63: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ReflectionCaptureの配置

何も置かないとスカイライトの反射でよくわからないことに

Page 64: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ReflectionCaptureの配置

最終のイメージをつかむために仮で入れておいたほうが良い

Page 65: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

PostProcessのオフ

• Auto Exposure

•露出が変わってしまう。

• Bloom

•画面が明るくなりわかりにくい

• Screen Space Ambient Occlusion

ライトベイクの結果かAOの結果かわからない

Page 66: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Compress LightMapsのオフ

Compress On 63MB

モヤモヤの原因がライトベイク時のサンプル数不足か

圧縮によるノイズかわからない。ライトマップのサイズが増えるので注意。

Compress Off 90MB

Page 67: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

3.テストライティング

Page 68: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ライティングバランスの調整

LightingQualityはPreviewかMediumで十分

Page 69: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Num Indirect Lighting Bounces の調整

Page 70: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Num Indirect Lighting Bounces の調整

Num Indirect Lighting Bounces 0 2m54s

Page 71: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Num Indirect Lighting Bounces の調整

Num Indirect Lighting Bounces 1 3m41s

Page 72: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Num Indirect Lighting Bounces の調整

Num Indirect Lighting Bounces 2 3m35s

Page 73: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Num Indirect Lighting Bounces の調整

Num Indirect Lighting Bounces 3 3m46s

Page 74: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Num Indirect Lighting Bounces の調整

Num Indirect Lighting Bounces 5 3m39s

Page 75: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Num Indirect Lighting Bounces の調整

Num Indirect Lighting Bounces 10 3m55s

Page 76: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Num Indirect Lighting Bounces の調整

Num Indirect Lighting Bounces 20 3m42s

Page 77: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Num Indirect Lighting Bounces の調整

Num Indirect Lighting Bounces 100 3m31s

Page 78: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Num Indirect Lighting Bounces の調整

• 「5」ぐらいで絵はほとんど変わらなくなる

•ほとんどビルド時間への影響はない

Page 79: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

4.ライティングエスキス

Page 80: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ライトマップのディティールを出したい

どうやって?

Page 81: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

1.ライトマップの高解像度化

• ライトマップの最小テクセル以下のディティールは記録できない

LightmapResolution=64LightmapResolution=512

Page 82: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

2.Static Lighting Level Scaleを下げる

Page 83: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

2.Static Lighting Level Scaleを下げる(イラディアンスキャッシュのRecordRadiusScaleを下げる)

• RecordRadiusより小さなディティールは記録できない

StaticLightingLevelScale=0.1StaticLightingLevelScale=1

Page 84: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

つまり…

1.欲しいディティールがでるまで

Static Lighting Level Scaleを下げる。

2.引き出したディティールを記録できるまで

ライトマップ解像度を上げる

Page 85: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

1.Static Lighting Level Scaleの設定

Page 86: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

このへんの

影のディティールと

ボケ足感が欲しい

写真のディティール

引用元 http://motokimokito.blogspot.jp/

Page 87: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale =1 (デフォルト)

Page 88: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale =0.5

Page 89: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale =0.2

Page 90: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale =0.1 (今回の設定)

Page 91: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

この段階ではモヤモヤは気にしない。

ディティールのチェック

Page 92: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

最終ライティングビルドの設定

Page 93: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ディティールは出たかな?

引用元 http://motokimokito.blogspot.jp/

Page 94: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

動的メッシュへの影響

Static Lighting Level Scaleを下げると

Volume Lighting Sampleが増えるので注意

Static Lighting Level Scale 1.0 Static Lighting Level Scale 0.1

Page 95: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

2.ライトマップ解像度の設定

Page 96: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Light Map Resolution 32

Page 97: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Light Map Resolution 64

Page 98: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Light Map Resolution 128

Page 99: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Light Map Resolution 256 (今回の設定)

Page 100: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Light Map Resolution 512

Page 101: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Light Map Resolution 1024

Page 102: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ダイレクトシャドウのディティール

影のギザギザが嫌なら解像度を上げざるを得ない

Page 103: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ダイレクトシャドウのディティール

上げたくないのでカスケードシャドウを使いました。

Page 104: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ライトマップ解像度が決まった。

Page 105: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

各メッシュのLightMapResolutionをあげるだけでいいか~

Page 106: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ライトマップ用UVの調整が残っていますね。

Page 107: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

不適切なライトマップ用UV

ライトマップ用UV アイランド間のパディング=0

Page 108: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ライトマップ解像度に対して4テクセルのパディングになるように調整

64

4

Page 109: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

適切なパディングに調整

ライトマップ用UV アイランド間のパディング=4

Page 110: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothnessを調整

Page 111: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale =0.1

Indirect Lighitng Quality=5

Medium

の設定で固定

Page 112: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=0.5 28m56s

Page 113: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=0.8 32m55s

Page 114: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=1 29m46s (デフォルト値)

Page 115: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=1.2 33m22s

Page 116: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=1.5 28m58s

Page 117: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=2.0 33m28s

Page 118: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=0.5 28m56s

Page 119: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=0.8 32m55s

Page 120: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=1 29m46s (デフォルト値)

Page 121: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=1.2 33m22s

Page 122: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=1.5 28m58s

Page 123: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=0.5 28m56s

Page 124: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=0.8 32m55s

Page 125: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=1 29m46s (デフォルト値)

Page 126: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=1.2 33m22s

Page 127: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=1.5 28m58s

Page 128: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Smoothness=2.0 33m28s

Page 129: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ディティールアップ

ノイズが増える(ビルド時間が増える)

スムーズUP(ビルド時間が短くなる)

ディティール消失

1.0値を下げる 値を上げる

Indirect Lighting Smoothnessの考察

Page 130: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

基本的に

Indirect Lighting Smoothness=1.0で、よさそうです

Page 131: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ディティール重視の時は0.8

スムーズさ重視の時は1.2ぐらいは、ありかもしれません

Page 132: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

5.最終ライティング

Page 133: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

モヤモヤ(アーティファクト)を消していく

Page 134: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ちょっとその前に

Page 135: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lighting Quality やLightmass Settingsって何してるの?

これまで触ってきた

• Static Lighting Level Scale

• Indirect Lighting Smoothness

他にも

• Indirect Lighting Quality

などなど…

Page 136: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

BaseLightmass.iniをスケーリングしています

Page 137: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

C:¥Program Files¥Epic Games¥4.12¥Engine¥Config

に入ってます

Page 138: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

; These are tweaked defaults for various lightmass solver and export settings; Artist-oriented lightmass settings are in the editor UI; Documentation for all of these is in UnrealLightmass/Public/SceneExport.h; This ini is reloaded every time a lighting build begins, no need to restart

[DevOptions.StaticLighting]bAllowMultiThreadedStaticLighting=TrueViewSingleBounceNumber=-1bUseBilinearFilterLightmaps=TruebCompressLightmaps=TruebUseConservativeTexelRasterization=TruebAccountForTexelSize=TruebUseMaxWeight=TrueMaxTriangleLightingSamples=8MaxTriangleIrradiancePhotonCacheSamples=4bAllow64bitProcess=TrueDefaultStaticMeshLightingRes=32bAllowCropping=FalsebGarbageCollectAfterExport=TruebRebuildDirtyGeometryForLighting=TruebUseEmbree=truebVerifyEmbree=false

[DevOptions.StaticLightingSceneConstants]StaticLightingLevelScale=1VisibilityRayOffsetDistance=.1VisibilityNormalOffsetDistance=3VisibilityNormalOffsetSampleRadiusScale=.5VisibilityTangentOffsetSampleRadiusScale=.8SmallestTexelRadius=.1; Tweaked for a good tradeoff between 'Cache Indirect Photon Paths' time and Indirect photon emitting 'Sampling Lights' timeLightGridSize=100AutomaticImportanceVolumeExpandBy=500MinimumImportanceVolumeExtentWithoutWarning=10000.0

[DevOptions.StaticLightingMaterial]bUseDebugMaterial=FalseShowMaterialAttribute=None; Material export sizes default to very small to keep exports fastEmissiveSampleSize=128DiffuseSampleSize=128SpecularSampleSize=128TransmissionSampleSize=256NormalSampleSize=256; Terrain materials default to much higher resolution since each material typically covers a large area in world spaceTerrainSampleScalar=4DebugDiffuse=(R=0.500000,G=0.500000,B=0.500000)EnvironmentColor=(R=0.00000,G=0.00000,B=0.00000)

[DevOptions.MeshAreaLights]bVisualizeMeshAreaLightPrimitives=False; Only emissive texels above .01 will be used to create mesh area lightsEmissiveIntensityThreshold=.01MeshAreaLightGridSize=100MeshAreaLightSimplifyNormalAngleThreshold=25MeshAreaLightSimplifyCornerDistanceThreshold=.5MeshAreaLightSimplifyMeshBoundingRadiusFractionThreshold=.1MeshAreaLightGeneratedDynamicLightSurfaceOffset=30

[DevOptions.PrecomputedDynamicObjectLighting]bVisualizeVolumeLightSamples=FalsebVisualizeVolumeLightInterpolation=FalseNumHemisphereSamplesScale=2SurfaceLightSampleSpacing=300FirstSurfaceSampleLayerHeight=50SurfaceSampleLayerHeightSpacing=250NumSurfaceSampleLayers=2DetailVolumeSampleSpacing=300VolumeLightSampleSpacing=3000; Clamp the number of volume samples generated to ~15mbMaxVolumeSamples=250000bUseMaxSurfaceSampleNum=True; Approximately clamp the number of surface samples generated to ~30mb (only for Landscape currently)MaxSurfaceLightSamples=500000

[DevOptions.PrecomputedVisibility]bVisualizePrecomputedVisibility=FalsebCompressVisibilityData=TruebPlaceCellsOnOpaqueOnly=TrueNumCellDistributionBuckets=800CellRenderingBucketSize=5NumCellRenderingBuckets=5PlayAreaHeight=220MeshBoundsScale=1.2VisibilitySpreadingIterations=1MinMeshSamples=14MaxMeshSamples=40NumCellSamples=24NumImportanceSamples=40

[DevOptions.PrecomputedVisibilityModeratelyAggressive]MeshBoundsScale=1VisibilitySpreadingIterations=1

[DevOptions.PrecomputedVisibilityMostAggressive]MeshBoundsScale=1VisibilitySpreadingIterations=0

[DevOptions.VolumeDistanceField]VoxelSize=75VolumeMaxDistance=900NumVoxelDistanceSamples=800; Clamp the size of the volume distance field generated to ~15mbMaxVoxels=3992160

[DevOptions.StaticShadows]; Using area shadows by default instead of filtering in texture spacebUseZeroAreaLightmapSpaceFilteredLights=FalseNumShadowRays=8NumPenumbraShadowRays=8NumBounceShadowRays=1bFilterShadowFactor=TrueShadowFactorGradientTolerance=0.5bAllowSignedDistanceFieldShadows=TrueMaxTransitionDistanceWorldSpace=50ApproximateHighResTexelsPerMaxTransitionDistance=50MinDistanceFieldUpsampleFactor=3MinUnoccludedFraction=.005StaticShadowDepthMapTransitionSampleDistanceX=100StaticShadowDepthMapTransitionSampleDistanceY=100StaticShadowDepthMapSuperSampleFactor=2; Clamp the number of shadow samples generated to ~8mb for huge levelsStaticShadowDepthMapMaxSamples=4194304

[DevOptions.ImportanceTracing]bUseCosinePDF=FalsebUseStratifiedSampling=TrueNumHemisphereSamples=16MaxHemisphereRayAngle=89bUseAdaptiveSolver=trueNumAdaptiveRefinementLevels=2AdaptiveBrightnessThreshold=1AdaptiveFirstBouncePhotonConeAngle=4

[DevOptions.PhotonMapping]bUsePhotonMapping=TruebUseFinalGathering=TruebUsePhotonDirectLightingInFinalGather=FalsebVisualizeCachedApproximateDirectLighting=FalsebUseIrradiancePhotons=TruebCacheIrradiancePhotonsOnSurfaces=TruebVisualizePhotonPaths=FalsebVisualizePhotonGathers=TruebVisualizePhotonImportanceSamples=FalsebVisualizeIrradiancePhotonCalculation=FalsebEmitPhotonsOutsideImportanceVolume=FalseConeFilterConstant=1; 400 gives a smooth enough result without requiring a very large searchNumIrradianceCalculationPhotons=400; Allocating most final gather samples towards importance samples gives a good result as long as there are enough first bounce photonsFinalGatherImportanceSampleFraction=.6; 10 degrees is a good tradeoff between capturing high frequency incident lighting at final gather points and covering the whole incident lighting domain with a limited number of importance directionsFinalGatherImportanceSampleConeAngle=10IndirectPhotonEmitDiskRadius=200IndirectPhotonEmitConeAngle=30MaxImportancePhotonSearchDistance=2000MinImportancePhotonSearchDistance=20; Preview uses a very small number of importance directionsNumImportanceSearchPhotons=10OutsideImportanceVolumeDensityScale=.0005DirectPhotonDensity=350; Same as DirectPhotonDensity, since currently direct photons are only used to create irradiance photonsDirectIrradiancePhotonDensity=350DirectPhotonSearchDistance=200IndirectPhotonPathDensity=5; Need a very high indirect photon density since first bounce photons are used to guide the final gatherIndirectPhotonDensity=600IndirectIrradiancePhotonDensity=300IndirectPhotonSearchDistance=200PhotonSearchAngleThreshold=.5IrradiancePhotonSearchConeAngle=10CachedIrradiancePhotonDownsampleFactor=2

[DevOptions.IrradianceCache]bAllowIrradianceCaching=TruebUseIrradianceGradients=FalsebShowGradientsOnly=FalsebVisualizeIrradianceSamples=TrueRecordRadiusScale=.8InterpolationMaxAngle=20PointBehindRecordMaxAngle=10; Increase distance and angle constraints in the shading pass, which filters the interpolated result without losing too much detail.DistanceSmoothFactor=4AngleSmoothFactor=4; Sky occlusion has less noise than normal GI, don't blur away detailsSkyOcclusionSmoothnessReduction=.5; Enforce a minimum sample rate on surfaces with no nearby occludersMaxRecordRadius=1024CacheTaskSize=64InterpolateTaskSize=64

[DevOptions.StaticLightingMediumQuality]NumShadowRaysScale=2NumPenumbraShadowRaysScale=4ApproximateHighResTexelsPerMaxTransitionDistanceScale=3MinDistanceFieldUpsampleFactor=3NumHemisphereSamplesScale=2NumImportanceSearchPhotonsScale=1NumDirectPhotonsScale=2DirectPhotonSearchDistanceScale=.5NumIndirectPhotonPathsScale=1NumIndirectPhotonsScale=2NumIndirectIrradiancePhotonsScale=2RecordRadiusScaleScale=.75InterpolationMaxAngleScale=1IrradianceCacheSmoothFactor=.75NumAdaptiveRefinementLevels=3AdaptiveBrightnessThresholdScale=.5AdaptiveFirstBouncePhotonConeAngleScale=1

[DevOptions.StaticLightingHighQuality]NumShadowRaysScale=4NumPenumbraShadowRaysScale=8ApproximateHighResTexelsPerMaxTransitionDistanceScale=6MinDistanceFieldUpsampleFactor=5NumHemisphereSamplesScale=4NumImportanceSearchPhotonsScale=2NumDirectPhotonsScale=2DirectPhotonSearchDistanceScale=.5NumIndirectPhotonPathsScale=2NumIndirectPhotonsScale=4NumIndirectIrradiancePhotonsScale=2RecordRadiusScaleScale=.75InterpolationMaxAngleScale=.75IrradianceCacheSmoothFactor=.75NumAdaptiveRefinementLevels=3AdaptiveBrightnessThresholdScale=.25AdaptiveFirstBouncePhotonConeAngleScale=2

[DevOptions.StaticLightingProductionQuality]NumShadowRaysScale=8NumPenumbraShadowRaysScale=32ApproximateHighResTexelsPerMaxTransitionDistanceScale=6MinDistanceFieldUpsampleFactor=5NumHemisphereSamplesScale=8NumImportanceSearchPhotonsScale=3NumDirectPhotonsScale=4; Decrease direct photon search distance so that we will have more accurate shadow transitions. This requires a higher density of direct photons.DirectPhotonSearchDistanceScale=.5NumIndirectPhotonPathsScale=2; Need a lot of indirect photons since we have increased the number of first bounce photons to use for final gathering with NumImportanceSearchPhotonsScaleNumIndirectPhotonsScale=8NumIndirectIrradiancePhotonsScale=2; Decreasing the record radius results in more records, which increases qualityRecordRadiusScaleScale=.5625InterpolationMaxAngleScale=.75IrradianceCacheSmoothFactor=.75NumAdaptiveRefinementLevels=3AdaptiveBrightnessThresholdScale=.25AdaptiveFirstBouncePhotonConeAngleScale=2.5

Page 139: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ぎゃ~~~~

Page 140: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lighting Quality が Production設定の場合

[DevOptions.StaticLightingProductionQuality]NumShadowRaysScale=8

NumPenumbraShadowRaysScale=32

ApproximateHighResTexelsPerMaxTransitionDistanceScale=6

MinDistanceFieldUpsampleFactor=5

NumHemisphereSamplesScale=8

NumImportanceSearchPhotonsScale=3

NumDirectPhotonsScale=4

; Decrease direct photon search distance so that we will have more accurate shadow transitions. This requires a higher density of direct photons.

DirectPhotonSearchDistanceScale=.5

NumIndirectPhotonPathsScale=2

; Need a lot of indirect photons since we have increased the number of first bounce photons to use for final gathering with NumImportanceSearchPhotonsScale

NumIndirectPhotonsScale=8

NumIndirectIrradiancePhotonsScale=2

; Decreasing the record radius results in more records, which increases quality

RecordRadiusScaleScale=.5625

InterpolationMaxAngleScale=.75

IrradianceCacheSmoothFactor=.75

NumAdaptiveRefinementLevels=3

AdaptiveBrightnessThresholdScale=.25

AdaptiveFirstBouncePhotonConeAngleScale=2.5

Page 141: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

[DevOptions.StaticLightingProductionQuality]NumShadowRaysScale=8

NumPenumbraShadowRaysScale=32

ApproximateHighResTexelsPerMaxTransitionDistanceScale=6

MinDistanceFieldUpsampleFactor=5

NumHemisphereSamplesScale=8

NumImportanceSearchPhotonsScale=3

NumDirectPhotonsScale=4

DirectPhotonSearchDistanceScale=.5

NumIndirectPhotonPathsScale=2

NumIndirectPhotonsScale=8

NumIndirectIrradiancePhotonsScale=2

RecordRadiusScaleScale=.5625

InterpolationMaxAngleScale=.75

IrradianceCacheSmoothFactor=.75

NumAdaptiveRefinementLevels=3

AdaptiveBrightnessThresholdScale=.25

AdaptiveFirstBouncePhotonConeAngleScale=2.5

何を調整しているか?

ファイナルギャザーのレイの数

影の品質

フォトンの数、フォトンマッピングの計算の品質

イラディアンスキャッシュの品質

ファイナルギャザーのアダプティブサンプルの品質

Page 142: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

アーティストが調整できるように重要項目を複数まとめて

スケーリングしてくれています

Page 143: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

後で少しお話します

Page 144: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

では改めて、モヤモヤを消していきましょう

Page 145: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

まずはLighting Qualityで調整

Page 146: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale=0.1で固定

Page 147: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Preview 2m16s

Page 148: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Medium 7m48s

Page 149: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

High 13m58s

Page 150: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Production 30m22s

Page 151: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

まだクオリティが足りない

Page 152: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

計算精度をさらに上げたい

Page 153: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Qualityで調整(ファイナルギャザーのレイの数を上げる)

Page 154: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Quality 1 Medium 7m48s

Page 155: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Quality 2 Medium 12m55s

Page 156: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Quality 5 Medium 29m46s

Page 157: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Quality 10 Medium 1h5m24s

Page 158: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Productionに

Page 159: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale=0.1 Indirect Lighting Quality=10 Production

Page 160: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale×Indirect Lighting Quality =1.0

掛けて1.0になる割合で概ね満足できるレベルにモヤモヤがとれました。

Lighting QualityがProductionの場合

0.1 10

0.2 5

0.5 2

のとき

のとき

のとき

Page 161: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale = 1→ 0.1Num Indirect Lighting Bounces =3→20Indirect Lighting Quality = 1→10Indirect Lighting Smoothness=1.0→1.0

Lighting Quality = Production

Build Time 15m57s →4h10m24s

Casa Barragan最終設定

Page 162: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale = 1→ 0.1Num Indirect Lighting Bounces =3→20Indirect Lighting Quality = 1→10Indirect Lighting Smoothness=1.0→1.0

Lighting Quality = Production

Build Time 15m57s →4h10m24s

Casa Barragan最終設定

15倍!!

Page 163: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

はっきり言ってゲームエンジンの設定としては重い設定だと思います。

Page 164: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ここまでは入り口です。

Page 165: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

6. Lightmass Deep Dive

Page 166: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lightmass.iniでしかできないチューニングが

たくさんあります

Page 167: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

C:¥Program Files¥Epic Games¥4.12¥Engine¥Config

Page 168: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

BaseLightmass.ini

Page 169: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

; These are tweaked defaults for various lightmass solver and export settings; Artist-oriented lightmass settings are in the editor UI; Documentation for all of these is in UnrealLightmass/Public/SceneExport.h; This ini is reloaded every time a lighting build begins, no need to restart

[DevOptions.StaticLighting]bAllowMultiThreadedStaticLighting=TrueViewSingleBounceNumber=-1bUseBilinearFilterLightmaps=TruebCompressLightmaps=TruebUseConservativeTexelRasterization=TruebAccountForTexelSize=TruebUseMaxWeight=TrueMaxTriangleLightingSamples=8MaxTriangleIrradiancePhotonCacheSamples=4bAllow64bitProcess=TrueDefaultStaticMeshLightingRes=32bAllowCropping=FalsebGarbageCollectAfterExport=TruebRebuildDirtyGeometryForLighting=TruebUseEmbree=truebVerifyEmbree=false

[DevOptions.StaticLightingSceneConstants]StaticLightingLevelScale=1VisibilityRayOffsetDistance=.1VisibilityNormalOffsetDistance=3VisibilityNormalOffsetSampleRadiusScale=.5VisibilityTangentOffsetSampleRadiusScale=.8SmallestTexelRadius=.1; Tweaked for a good tradeoff between 'Cache Indirect Photon Paths' time and Indirect photon emitting 'Sampling Lights' timeLightGridSize=100AutomaticImportanceVolumeExpandBy=500MinimumImportanceVolumeExtentWithoutWarning=10000.0

[DevOptions.StaticLightingMaterial]bUseDebugMaterial=FalseShowMaterialAttribute=None; Material export sizes default to very small to keep exports fastEmissiveSampleSize=128DiffuseSampleSize=128SpecularSampleSize=128TransmissionSampleSize=256NormalSampleSize=256; Terrain materials default to much higher resolution since each material typically covers a large area in world spaceTerrainSampleScalar=4DebugDiffuse=(R=0.500000,G=0.500000,B=0.500000)EnvironmentColor=(R=0.00000,G=0.00000,B=0.00000)

[DevOptions.MeshAreaLights]bVisualizeMeshAreaLightPrimitives=False; Only emissive texels above .01 will be used to create mesh area lightsEmissiveIntensityThreshold=.01MeshAreaLightGridSize=100MeshAreaLightSimplifyNormalAngleThreshold=25MeshAreaLightSimplifyCornerDistanceThreshold=.5MeshAreaLightSimplifyMeshBoundingRadiusFractionThreshold=.1MeshAreaLightGeneratedDynamicLightSurfaceOffset=30

[DevOptions.PrecomputedDynamicObjectLighting]bVisualizeVolumeLightSamples=FalsebVisualizeVolumeLightInterpolation=FalseNumHemisphereSamplesScale=2SurfaceLightSampleSpacing=300FirstSurfaceSampleLayerHeight=50SurfaceSampleLayerHeightSpacing=250NumSurfaceSampleLayers=2DetailVolumeSampleSpacing=300VolumeLightSampleSpacing=3000; Clamp the number of volume samples generated to ~15mbMaxVolumeSamples=250000bUseMaxSurfaceSampleNum=True; Approximately clamp the number of surface samples generated to ~30mb (only for Landscape currently)MaxSurfaceLightSamples=500000

[DevOptions.PrecomputedVisibility]bVisualizePrecomputedVisibility=FalsebCompressVisibilityData=TruebPlaceCellsOnOpaqueOnly=TrueNumCellDistributionBuckets=800CellRenderingBucketSize=5NumCellRenderingBuckets=5PlayAreaHeight=220MeshBoundsScale=1.2VisibilitySpreadingIterations=1MinMeshSamples=14MaxMeshSamples=40NumCellSamples=24NumImportanceSamples=40

[DevOptions.PrecomputedVisibilityModeratelyAggressive]MeshBoundsScale=1VisibilitySpreadingIterations=1

[DevOptions.PrecomputedVisibilityMostAggressive]MeshBoundsScale=1VisibilitySpreadingIterations=0

[DevOptions.VolumeDistanceField]VoxelSize=75VolumeMaxDistance=900NumVoxelDistanceSamples=800; Clamp the size of the volume distance field generated to ~15mbMaxVoxels=3992160

[DevOptions.StaticShadows]; Using area shadows by default instead of filtering in texture spacebUseZeroAreaLightmapSpaceFilteredLights=FalseNumShadowRays=8NumPenumbraShadowRays=8NumBounceShadowRays=1bFilterShadowFactor=TrueShadowFactorGradientTolerance=0.5bAllowSignedDistanceFieldShadows=TrueMaxTransitionDistanceWorldSpace=50ApproximateHighResTexelsPerMaxTransitionDistance=50MinDistanceFieldUpsampleFactor=3MinUnoccludedFraction=.005StaticShadowDepthMapTransitionSampleDistanceX=100StaticShadowDepthMapTransitionSampleDistanceY=100StaticShadowDepthMapSuperSampleFactor=2; Clamp the number of shadow samples generated to ~8mb for huge levelsStaticShadowDepthMapMaxSamples=4194304

[DevOptions.ImportanceTracing]bUseCosinePDF=FalsebUseStratifiedSampling=TrueNumHemisphereSamples=16MaxHemisphereRayAngle=89bUseAdaptiveSolver=trueNumAdaptiveRefinementLevels=2AdaptiveBrightnessThreshold=1AdaptiveFirstBouncePhotonConeAngle=4

[DevOptions.PhotonMapping]bUsePhotonMapping=TruebUseFinalGathering=TruebUsePhotonDirectLightingInFinalGather=FalsebVisualizeCachedApproximateDirectLighting=FalsebUseIrradiancePhotons=TruebCacheIrradiancePhotonsOnSurfaces=TruebVisualizePhotonPaths=FalsebVisualizePhotonGathers=TruebVisualizePhotonImportanceSamples=FalsebVisualizeIrradiancePhotonCalculation=FalsebEmitPhotonsOutsideImportanceVolume=FalseConeFilterConstant=1; 400 gives a smooth enough result without requiring a very large searchNumIrradianceCalculationPhotons=400; Allocating most final gather samples towards importance samples gives a good result as long as there are enough first bounce photonsFinalGatherImportanceSampleFraction=.6; 10 degrees is a good tradeoff between capturing high frequency incident lighting at final gather points and covering the whole incident lighting domain with a limited number of importance directionsFinalGatherImportanceSampleConeAngle=10IndirectPhotonEmitDiskRadius=200IndirectPhotonEmitConeAngle=30MaxImportancePhotonSearchDistance=2000MinImportancePhotonSearchDistance=20; Preview uses a very small number of importance directionsNumImportanceSearchPhotons=10OutsideImportanceVolumeDensityScale=.0005DirectPhotonDensity=350; Same as DirectPhotonDensity, since currently direct photons are only used to create irradiance photonsDirectIrradiancePhotonDensity=350DirectPhotonSearchDistance=200IndirectPhotonPathDensity=5; Need a very high indirect photon density since first bounce photons are used to guide the final gatherIndirectPhotonDensity=600IndirectIrradiancePhotonDensity=300IndirectPhotonSearchDistance=200PhotonSearchAngleThreshold=.5IrradiancePhotonSearchConeAngle=10CachedIrradiancePhotonDownsampleFactor=2

[DevOptions.IrradianceCache]bAllowIrradianceCaching=TruebUseIrradianceGradients=FalsebShowGradientsOnly=FalsebVisualizeIrradianceSamples=TrueRecordRadiusScale=.8InterpolationMaxAngle=20PointBehindRecordMaxAngle=10; Increase distance and angle constraints in the shading pass, which filters the interpolated result without losing too much detail.DistanceSmoothFactor=4AngleSmoothFactor=4; Sky occlusion has less noise than normal GI, don't blur away detailsSkyOcclusionSmoothnessReduction=.5; Enforce a minimum sample rate on surfaces with no nearby occludersMaxRecordRadius=1024CacheTaskSize=64InterpolateTaskSize=64

[DevOptions.StaticLightingMediumQuality]NumShadowRaysScale=2NumPenumbraShadowRaysScale=4ApproximateHighResTexelsPerMaxTransitionDistanceScale=3MinDistanceFieldUpsampleFactor=3NumHemisphereSamplesScale=2NumImportanceSearchPhotonsScale=1NumDirectPhotonsScale=2DirectPhotonSearchDistanceScale=.5NumIndirectPhotonPathsScale=1NumIndirectPhotonsScale=2NumIndirectIrradiancePhotonsScale=2RecordRadiusScaleScale=.75InterpolationMaxAngleScale=1IrradianceCacheSmoothFactor=.75NumAdaptiveRefinementLevels=3AdaptiveBrightnessThresholdScale=.5AdaptiveFirstBouncePhotonConeAngleScale=1

[DevOptions.StaticLightingHighQuality]NumShadowRaysScale=4NumPenumbraShadowRaysScale=8ApproximateHighResTexelsPerMaxTransitionDistanceScale=6MinDistanceFieldUpsampleFactor=5NumHemisphereSamplesScale=4NumImportanceSearchPhotonsScale=2NumDirectPhotonsScale=2DirectPhotonSearchDistanceScale=.5NumIndirectPhotonPathsScale=2NumIndirectPhotonsScale=4NumIndirectIrradiancePhotonsScale=2RecordRadiusScaleScale=.75InterpolationMaxAngleScale=.75IrradianceCacheSmoothFactor=.75NumAdaptiveRefinementLevels=3AdaptiveBrightnessThresholdScale=.25AdaptiveFirstBouncePhotonConeAngleScale=2

[DevOptions.StaticLightingProductionQuality]NumShadowRaysScale=8NumPenumbraShadowRaysScale=32ApproximateHighResTexelsPerMaxTransitionDistanceScale=6MinDistanceFieldUpsampleFactor=5NumHemisphereSamplesScale=8NumImportanceSearchPhotonsScale=3NumDirectPhotonsScale=4; Decrease direct photon search distance so that we will have more accurate shadow transitions. This requires a higher density of direct photons.DirectPhotonSearchDistanceScale=.5NumIndirectPhotonPathsScale=2; Need a lot of indirect photons since we have increased the number of first bounce photons to use for final gathering with NumImportanceSearchPhotonsScaleNumIndirectPhotonsScale=8NumIndirectIrradiancePhotonsScale=2; Decreasing the record radius results in more records, which increases qualityRecordRadiusScaleScale=.5625InterpolationMaxAngleScale=.75IrradianceCacheSmoothFactor=.75NumAdaptiveRefinementLevels=3AdaptiveBrightnessThresholdScale=.25AdaptiveFirstBouncePhotonConeAngleScale=2.5

Page 170: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ご安心を!

Page 171: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

必要なところだけコピペ&値を変更

「DefaultLightmass.ini」として

「ProjectName」¥Configに置くことで設定可能

Page 172: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

例えばエリアシャドウのクオリティを

上げたい時

Page 173: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

DefaultLightmass.iniでシャドウのディティール上げる

NumShadowRaysScale=2 NumPenumbraShadowRaysScale=4

Medium 設定のデフォルト値

Page 174: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

エディタでできないチューニングができる

NumShadowRaysScale=16 NumPenumbraShadowRaysScale=64

Page 175: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

「BaseLightmass.ini」からコピペして値を変えるだけ

「ProjectName」¥Configの中に「DefaultLightmass.ini」として保存

Page 176: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

さっきのシーンをもっと最適化できる方法はないか

Page 177: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

レイが足りない

レイが十分

レイが十分

レイが足りない

全体のレイの数を増やすと無駄なのでは…

Page 178: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ファイナルギャザーを改善

Indirect Lighting Qualityを上げる

ファイナルギャザーのレイの数を上げる

Page 179: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ファイナルギャザーのレイの数に比例して品質は上がるが時間がかかる。

Page 180: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ファイナルギャザーを改善

Indirect Lighting Qualityを増やすと必要のない所までレイが増えるので無駄なのでは

アダプティブサンプルで必要なとこに必要なだけレイを増やしたい

アダプティブサンプル改善の

レベルを上げる

or

レベルが上がる際の明るさの閾値を下げる

Page 181: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

アダプティブサンプル改善のレベルを上げる

NumAdaptiveRefinementLevel

Page 182: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=0 Medium 1m16s

Page 183: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=1 Medium 2m15s

Page 184: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=2 Medium 4m43s

(Lighting Quality Previewの時のデフォルト値)

Page 185: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=3 Medium 10m59s

(Lighting Quality Medium,High,Productionの時のデフォルト値)

Page 186: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=4 Medium 34m45s

Page 187: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

アダプティブサンプル改善のレベルを上げる閾値を調整

AdaptiveBrightnessThresholdScale

Page 188: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale =0.2

Indirect Lighitng Quality=5

Medium

の設定で固定

Page 189: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=3 AdaptiveBrightnessThresholdScale=0.5

(Mediumのデフォルト) 3m28s

Page 190: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=3 AdaptiveBrightnessThresholdScale=0.25

3m33s

Page 191: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=3 AdaptiveBrightnessThresholdScale=0.05

4m13s

Page 192: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=4 AdaptiveBrightnessThresholdScale=0.5

12m41s

Page 193: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=5 AdaptiveBrightnessThresholdScale=0.25

48m03s

Page 194: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

あれ、よけい重くないか?ということで

Static Lighting Level Scale =0.2Indirect Lighitng Quality=10

Productionと比較

Page 195: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale=0.2 Indirect Lighintg Quality=10 Production 28m22s

Page 196: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

NumAdaptiveRefinementLevels=5 AdaptiveBrightnessThresholdScale=0.25

48m03s

Page 197: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

費用対効果が悪いため素直にIndirect Ligihting Qualityでレイの数を上げたほうがよいです

Page 198: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ただし、Indirect Lighting Qualityで11以上値をいれるのは要注意

Page 199: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Indirect Lighting Quality>11の時

NumAdaptiveRefinementLevel +1になります

Page 200: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

ビルド時間が跳ね上がります。

Page 201: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lightimass.iniからレイの数を調整

各Ligihtng Qualityの「NumHemisphereSamplesScale」

Or

[DevOptions.ImportanceTracing]NumHemisphereSamples

これらの値を変更することでもレイの数をスケーリングできる

Page 202: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lightmass.iniにはあなたのコンテンツにあった

カスタムチューニングをするための全ての設定があります

Page 203: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lets make Lightmass Epic

Koolaさんはじめ凄腕アーティスト達がLightmassを研究しています

https://forums.unrealengine.com/showthread.php?88952-Lets-make-Lightmass-EPIC-(and-understandable)

Page 204: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

まとめ

Page 205: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

静的なシーンでのLightmapの品質

(MovableなStaticMesh,SkeltalMeshは後半のセッションで)

Page 206: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

フォトンがでるライト

• Directional Light

• Point Light

• Spot Light

• Koola式バウンスカード

フォトンがでないライト

• Sky Light

• Use Emissive ForStatic Lighting

各種光源の挙動の違いを理解するのが大事

特にスカイライト!

Page 207: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lighting Quality

各種設定が何に影響するか

フォトンマッピング

イラディアンスキャッシュ

ファイナルギャザー

全体的な品質設定

項目 影響するもの ビルド時間への影響

Page 208: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Static Lighting Level Scale

Num Indirect Lighting Bouces

Indirect Lighting Quality

Indirect Lighting Smoothness

各種設定が何に影響するか

Lightmassのディティール

(イラディアンスキャッシュの

記録半径)

シーンの明るさ

(フォトンの反射回数)

アーティファクトノイズを減らす

(ファイナルギャザーのレイの数)

ライトマップをぼかす割合

(イラディアンスキャッシュの

補間の割合)

項目 影響するもの ビルド時間への影響

中(高)

Page 209: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

Lightmassの品質(ディティール)&ビルド時間=

ライトマップ解像度(解像度が上がる)

×Lighitng Quality(全体的な品質が上がる)

×Indirect Lighting Quality(アーティファクトノイズが減る)

÷Static Lighting Level Scale(ディティールが上がる)

Page 210: 建築ビジュアライズにおけるLightmass実践使用方法 (フリーランス 真茅健一様)

間違っている事やこんないい方法あるよって方は

ドシドシご意見を頂けると嬉しいです!!

@torashami

http://www.frames-cg.com/