ぼっちブログ

個人ゲーム開発者やっています。主に購入したUniyアセットの使用感を書いていきます。

【Unity】MagicaVoxelのレンダリングっぽくするためにベイクの勉強(3)

この記事の続きです。

【Unity】MagicaVoxelのレンダリングっぽくするためにベイクの勉強(2) - ぼっちブログ

バージョン情報

  • Unity 2018.1.9f2→途中からUnity 2018.2.8f1
  • MagicaVoxel 0.98.2

Lightmapping Settingsをいじる

Lightmapper

Enlightenが従来の方法で、Progressiveが後で追加された方法です。

Progressiveはざっくりというと、

  • ベイクの途中結果がみれる
    • つまり、完了まで待たなくてよく、途中でちょっと修正とかができる
  • Realtime GIは使えない

となっています。

blogs.unity3d.com

tsubakit1.hateblo.jp

モバイルで作る場合は、Realtime GIはスペック上まず使えないので、Progressiveでいいかな。

この後の設定項目はProgressiveに設定した場合のを見ていきます。

Prioritize View

Enable this to make the Progressive Lightmapper apply changes to the texels that are currently visible in the Scene View, then apply changes to the out-of-view texels.

プログレッシブライトマッパー - Unity マニュアル

チェックを入れると見えてるシーンから優先的にベイクするかんじかな。

Direct Samples

直接光計算のサンプル数。

値を大きくすると品質は上がるがベイク時間もその分長くなる。

Indirect Samples

間接光計算のサンプル数。

マニュアルによると、

For some Scenes, especially outdoor Scenes, 100 samples should be enough. For indoor Scenes with emissive geometry, increase the value until you see the result you want.

Google翻訳

いくつかのシーン、特に屋外シーンでは、100サンプルで十分です。 emissiveジオメトリを持つ屋内シーンの場合、必要な結果が表示されるまで値を大きくします。

プログレッシブライトマッパー - Unity マニュアル

だそうです。

Bounces

光の反射回数。

For most Scenes, two bounces is enough. For some indoor Scenes, more bounces might be necessary.

Google翻訳

ほとんどのシーンでは、2回のバウンスで十分です。 屋内シーンによっては、さらにバウンスが必要な場合があります。

プログレッシブライトマッパー - Unity マニュアル

らしい。

Bouncesが2の場合、壁の側面が床の色で緑っぽくになっている。

Bouncesが2のとき 壁の側面が緑っぽくなっている

Noneだと反射しないので、床の色は反射されない。

Bouncesが0のとき 床の色が反射されない

Filtering

ノイズを制限するためにライトマップの後処理を設定するらしい。

None、Auto、Advancedが選べて、Advancedを選ぶと設定がいじれる。

FilteringでAdvancedを選んだときの設定項目

とりあえずAutoにしとけばよさげ。

Lightmap Resolution

単位あたりのテクセル数を設定する。

値を大きくすると品質が上がるけど、ベイク時間も長くなるっぽい。

マニュアルには書いてないけど、たぶんライトマップのファイルサイズも大きく場合あると思う。

Liightmap Padding

焼いたライトマップの各シェイプ間の間隔(パディング)を設定。

特に問題なければ、2のままでいいと思う。

Lightmap Size

ライトマップのテクスチャサイズ。

古いモバイル端末だと、最大テクスチャサイズが2048だったり1024だったりするので、それ以下にする。

Compress Lightmaps

圧縮するかどうか。

圧縮するとライトマップのファイルサイズが小さくなるが、画像が荒くなったり、ベイク時の圧縮処理の時間がかかるようになる。

圧縮してないライトマップ

圧縮したライトマップ

圧縮しないとサイズが大きすぎるので、基本、圧縮で。

Ambient Occlusion

モデルの接地面をイケてる感じに暗くします。

Ambient Occlusionなし
Ambient Occlusionなし

Ambient Occlusionあり
Ambient Occlusionあり

  • Max Distance:たぶん、影響の及ぼす範囲?
  • Indirect Contribution:間接ライティングの影響量
  • Direct Contribution:直接ライティングの影響量

とりあえず、ここまで。

ちょっと力尽きたかも。