2019年7月28日

CKを使って光源を調整しよう

スカイリムにおいて「光源」はとても重要な要素であり、その位置、色、照射範囲、明るさなどによって様々な世界を作り上げています。

全体の光源調整は他の要素も絡んでくる職人芸の領域なので、それは素直にオーバーホールMODやENBを利用しましょう。

今回は、特定の光源だけ自分で調整したり、自作の家に光源を配置したりする際に役立つであろう情報をまとめてみました。


目次

  1. 光源とは何か
  2. 特定の場所にある光源を個別に調整する
  3. 日光による影響を表現する
  4. 光源のベースオブジェクトを調整する
  5. 「たいまつ」や「灯火・灯明魔法」を調整する
  6. 光源のチラツキ問題を検証する
  7. ENBを導入すると目立つ光の玉について

1. 光源とは何か

光源とは「Light」のことです。

CKのオブジェクトウィンドウでは「WorldObjects > Light」に分類されるものです。

ほとんどの光源はnifモデルを持たず、プレイ中はその輪郭を直接見ることができません。
その代わり、「周囲のオブジェクトを照らしてそれらを認識させる」という役割を持っています。

もちろん、CKで見れば光源もオブジェクトの1つであり、レンダーウィンドウの中で見て動かすことができます。

一見すると光源のように思える炎やシャンデリアなどは、実は光源ではありません。

例えばロウソク付きのランタンは、「Static」という固定オブジェクトに分類されるものです。
nifモデルにロウソクが付いているので、それ自体は光って見えます。しかし、周囲のオブジェクトを照らす効果はほとんどありません。

目次に戻る


2. 特定の場所にある光源を個別に調整する

2-1. 光源の表示

それではまず、配置済みの光源を個別に調整する方法を見ていきましょう。
この場合、光源の「位置」や「照射範囲」、「明るさ(光の強さ)」を調整することができます。

例として、ドラゴンズリーチの調理場で説明します。
レンダーウィンドウで良く見ると、「薄い白色で電球の形をしたオブジェクト」を見つけることができます。これが光源です。

思いのほか見づらかった。ごめんなさい。

もしどうしても見つからない場合は、メニューバーから「View > Light Markers」のチェックを確認してください。このチェックで、電球マーカー表示のオンオフを切り替えることができます。

また、ツールバーの電球マークを押すと、レンダーウィンドウ内における光源のシミュレーションを切り替えることができます。

2-2. 位置の変更

光源の電球マーカーは、他のオブジェクトと同様にドラッグして移動することができます。

Reference を開いて、「3D Data」タブの「Position」から数値で変更することもできます。

2-3. 照射範囲の変更

照射範囲は、「Extra」タブの「Radius」で変更することができます。

例えばこの値を「400」にすると、周りの柱やラグマットにも照射されるのがわかります。

もし照射範囲の境界を視認したい場合は、メニューバーから「View > Light Radius」のチェックを入れることで、範囲円が表示されます。

2-4. 明るさ(光の強度)の変更

明るさは、「Light Data」タブの「Fade」で変更することができます。値が高いほど明るいです。

例えばこの値を「8」にすると、照射範囲はそのままで光が強くなります。

これは眩しい。あくまでも説明のための設定です。

また、影ありの光源を配置したときにアーティファクトが出る場合は、このタブにある「Shadow Depth Bias」の値を増やすと良いようです。

2-5. セル内の Light 一覧

セルに置かれた Light をすべて確認したいときは、セルビューの右側の欄で「Type」をクリックして列を並び替えると良いでしょう。
ダブルクリックすればその Light をレンダーウィンドウに表示しますし、右クリックから「Edit」を選択すれば Reference を開くことができます。

目次に戻る


3. 日光による影響を表現する

3-1. Emittance の設定

ハースファイアで建てられる温室の内部は、昼間明るく、夜間は暗くなっています。
この温室には光源が1つ配置されていて、Reference を見ると「Emittance」タブに次のような設定がされています。

この項目に「FXLightRegionSunlight」という、いかにも日光の影響を受けそうなものが設定されています。これが設定されている光源は、昼間だけ明るくなります。

3-2. 光源以外の Emittance

Emittance を設定できるものは、何も光源オブジェクトだけに限りません。
例えばブリーズホームの屋内にある「窓が付いた壁」にも、同じ Emittance が設定されています。そのため、昼間だけ窓が明るくなります。

もし、家の外壁に窓を設置して「夜間だけ屋内の光が漏れてくる」という表現をしたいときは、「FXLightRegionInvertDayNight」あたりを指定すると良いでしょう。これを設定すると、夜間だけ明るくなります。

目次に戻る


4. 光源のベースオブジェクトを調整する

4-1. Light の設定項目

光源のベースオブジェクトである Light には、光源としての基本情報が設定されています。使いそうな項目を挙げてみます。

  • Type … 照射方向
    • Omnidirectional: 全方向、影なし
    • Shadow Omnidirectional: 全方向、影あり
    • Shadow Hemisphere: 半球、影あり
    • Shadow Spotlight: 1方向、影あり
  • FOV … Shadow Spotlight の照射角度
  • Radius … 照射範囲(半径)
  • Color … 色(RGB値)
  • Fade … 明るさ(1.0 から 2.5 の間が標準的で、値が高いほど明るい)
  • Flicker Effect … 明滅(Flicker は炎のようにちらつく光、Pulse は一定周期の光)
    • Period: 1サイクル当たりの秒数
    • Intensity Amplitude: 減光量
    • Movement Amplitude: Flicker の位置ずれ量

「Type」を影ありの光源にすると雰囲気は良くなるものの、負荷が高いです。配置によってはCTDの要因になりうるので注意してください。

「Flicker Effect」による明滅の設定は結構難しいです。新規の Light を作る場合でも、ここはバニラの値を参考にした方が良いかもしれません。

上記以外の項目についても少し触れておきます。

「Model」は見た目です。後述するたいまつ以外、設定されているのを見たことがありません。

「Select Sound」では音を出すことができますが、これも周りに置かれた炎などから出すことが多く、光源そのものに設定することは少ないでしょう。

「Near Clip」については、creationkit.com の情報によると使われなくなったようです。

4-2. Light と ObjectReference との関係

Light は光源の基本情報でした。
それに対して、レンダーウィンドウに配置されたものは Light のコピーであり、これを ObjectReference と呼びます。

原則として、ベースである Light を変更すると、配置されたコピーである ObjectReference すべてに影響します。

ただし、前述のように個別の ObjectReference の「照射範囲(Radius)」や「明るさ(Fade)」を変更した場合、その2つについては個別設定の方が優先されます。

4-3. 設定例

参考までに、バニラで使われている Light をいくつか載せておきます。

  • たき火
  • キャンドル
  • ハースファイアの屋内

目次に戻る


5. 「たいまつ」や「灯火・灯明魔法」を調整する

5-1. たいまつ

なんと、たいまつは光源そのものです。
光源であるにもかかわらず、物体として見えるし動かせるし、さらには装備することもできます。

この設定は、「This light can be carried」のチェックを入れると有効になるようです。

この「Torch01(FormID: 0001D4EC)」を変更するだけで、たいまつの照射範囲や明るさ、持続時間などを簡単に変更することができます。

ただし、動かせる光源なうえにNPCも所持するため、Type を影ありの Shadow Omnidirectional にすると負荷が増えますのでご注意ください。

5-2. 灯火・灯明魔法

これらの魔法で使われているのは、「MagicLightLightSpell01(FormID: 0003FA58)」です。

Fade が 2.5! 眩しいはずだ…。

青白くて強い光なので、個人的にはあまり使うことのない魔法です。
「Color」のRGB値を暖かみのある色にしたり、「Fade」を下げて光量を抑えると、目に優しい光になることでしょう。

目次に戻る


6. 光源のチラツキ問題を検証する

6-1. 光源数の制限

画面内で同時に表示される光源数には制限があります。この制限には2つの分類があります。

  1. Actor 等に魔法で適用される Light
  2. セルに配置された ObjectReference としての Light

「魔法の Light」のわかりやすい例は、灯火や灯明の魔法です。
この上限はゲーム設定の「iMagicLightMaxCount」という項目で決められていて、バニラでは「4」になっています。

ただ、灯火は術者自身に付けるものですし、灯明は Hazard という要素によって1つまでに制限されているため、バニラで4つに達することはほとんどないでしょう。
同じ Actor に付けられる魔法の Light は1つまでですので、灯火の重ね掛けで4つに達することもありません。

もう一方の「配置された Light」に関しては、制限数があるというより「状況によって消えることがある」と言った方が正しいです。
これが原因となり、視点を動かすだけで光が付いたり消えたりするチラツキ現象が起こります。

6-2. 表示実験

ハイフロスガーの会議室をお借りして、セルに置いた光源の表示実験をしてみました。

元々配置されている光源と炎を取っ払い、テーブルに12枚のお皿を置いて、その上方に色違いの Light を配置します。
色は7色で、青と黄は1つずつ、それ以外は2つずつ置いています。すべて影なしの光源で、隣同士の照射範囲が少し重なるようにしています。

すると12個すべての光源が表示され、お皿が照らされました。個数の上限がいくつなのかは検証しませんでしたが、12個も表示できれば充分と判断しました。

次に、Radius をかなり大きくして、すべての照射範囲を相互干渉させてみました。

問題なしです。お皿はそれぞれの色で照らされています。

Radius を元に戻し、コンソールの tfc コマンドを使って、光が消える角度がないか探しました。
すると、「床への照射」が消える箇所を1つだけ発見しました。

お皿は照らされているので、光源自体は消えていません。
影なしの光源では、このように光の一部だけ消える可能性があることがわかりました。

影ありの光源も試します。白の2つだけ「Shadow Omnidirectional」にしてみます。

問題なしです。さらに黄色とシアンも影ありにしてみます。計5個です。

すると白の1つが消えました。視点を動かすと表示されたり消えたりします。
お皿の表面が暗くなっていて、光源ごと消えているのがわかります。

ここでふと閃いて、消えた白の光源を少し編集して保存しました。ある1つのチェックを入れて保存し、そのチェックを外して再度保存しただけです。データ上は何も変わらないはずですが…。

白が復活し、今度はシアンの1つが消えました。

何が言いたいかというと、「最後に編集した光源は優先して表示される」ということです。
編集の順番など関係あるのか? と思われるでしょうけれど、何度かやってみたところ、これは再現性がありました。

6-3. チラツキ現象のまとめ

以上をもとに、チラツキ現象をまとめてみます。

  • 「影なし」はチラツキにくい。消えるときは、床など一部への照射が消える。
  • 「影あり」は数が多いとチラツキやすい。消えるときは、Light ごと消える。
  • 同一esp内では、最後に編集した光源が優先される。
  • 異なるespでは、ロードオーダーの優先順位に従う。

同一セルを異なるesp(複数のMOD)で管理する場合に関しては、ロードオーダーで優先されたespの光源が優先して表示されることを過去に経験しています。

このまとめが本当に正しいかどうか、100%の自信があるわけではありません。
パソコンのスペックやiniファイル設定、光源と他のオブジェクトとの配置関係によっても変わる可能性があります。

また、たとえ影なしの Light であっても、Radius の大きいものだと床への照射が消えたときに目立ちます。影ありは、数が増えるだけでチラツく上に Light ごと消えてしまいます。

そのあたりを考慮しながら配置して、最終的にはテストプレイで確認することになりそうです。
消える原因までは解明できませんでしたが、この実験が何かの参考になれば幸いです。

目次に戻る


7. ENBを導入すると目立つ光の玉について

7-1. 光の玉の正体

これは光源とはまた違う話なのですが、関連性が大きいので取りあげておきます。

ENBを導入すると、ランタンやキャンドルなどの部分が光の玉になることがあります。

ENBを外すと、元々はぼんやりした発光表現であることがわかります。

この部分をCKで開いてみると、ランタンに重なるようにしてグレーの十字のオブジェクトが配置されています。

これは Static オブジェクトの1つで、「FXGlow ~」というID名が付いています。
nifモデルを確認すると、まさに球状の発光体です。

7-2. 光の玉への対策

光の玉はいたる所に配置されています。その見え方は、付近に光源(Light)があるかどうかによって変わります。

上の画像では近くに光源が配置されているので、そこまでくっきりとは玉が目立ちません。
これがもし光源のない場所だと、玉の輪郭がかなり明瞭になってしまいます。

光の玉を目立たなくする対策の1つは、「近くに光源を配置すること」です。それだけで輪郭が目立たなくなります。

もう1つの対策は、「光の玉を非表示にして消してしまうこと」です。
過去記事の CKで既存オブジェクトを非表示にする方法 で書いたようにすれば、安全に消すことができます。

光の玉が目立つのはENBを導入している場合だけですが、公開する予定の自作MODでこのエフェクトを使う場合には、配置に気を付けた方が良いでしょう。

以上で光源調整のお話は終わりです。

光の表現は、これ以外の要素(天候や霧など)も大きく関わってきます。そこにENBのポストエフェクトも絡んでくると、それはもうプロレベルのお仕事。

オーバーホールは難しくても、たいまつや灯火の光源変更だけなら簡単です。自分好みの設定を見つけてみるのも楽しいですよ。

目次に戻る

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。