ライトと影
ライトと影
form•Zには光源として定義できる光が8種類あります。使用できる光は平行光、点光源、スポットライト、プロジェクター、エリアライト、カスタムライト、線光源、環境光源です。これらのライトは、すべてのサーフェースに等しく照らされる環境光に対して追加されるということに注意してください。環境光の色と強さは[ライト]パレットで設定します。[ライト]パレットで表示をオンにしているライトは、表示モードがワイヤーフレームやシェーディングのときに表示されます。
form•Zは起動時に太陽を表す平行光源を1つ自動的に作成します。さらに、シーンには必ず環境光が1つあります。平行光、点光源、スポットライト、プロジェクター、エリアライト、カスタムライト、環境光源、線光源の各ライトの名前は[ライト]パレットに表示されます。[ライト]ダイアログで、ライトの定義や既存のライトの消去/編集を行うことができます。ライトのパラメータと位置は[ライトパラメータ]ダイアログで設定できます。ライトの位置もform•Zの[変換]ツールを使用して操作できます。いろいろな品質レベルで影を表現するかしないかを設定することもできます。ライト固有の機能については、このセクションで後述します。
ライトは使用するレンダリングモードに応じてパラメータが変わります。RenderZoneはform•Zで使用できるレンダリングプラグインです。グローバルイルミネーションを使って、リアルな静止画像やアニメーションをレンダリングできます。RenderZoneを購入していなくても、体験版(ウォーターマーク付)としてform•Zと一緒にデフォルトでインストールされます。つまり、RenderZoneレンダリングプラグインを購入していなくても、[RenderZone]モードのライトパラメータを[ライトパラメータ]ダイアログで操作することができます。
[アニメーション]ワークスペースには光源を簡単に定義できるツールが6個あります。
点光源

点光源は指定された点からあらゆる方向に光を照射します。この光の強さは光源からの距離が増加するにつれて減少したり、減少しなかったりします(設定によって変わります)。点光源の例としてろうそくの光があります。
このツールをアクティブにして、モデリングウィンドウをクリックすると、クリックした場所を中心とする点光源を新たに配置します。点光源を配置すると、矢印のウィジェットが表示されます。この矢印を調整して点光源の半径を変えます。ワイヤーフレームモードかシェーディングモードであれば点光源のサーフェース([強さ]タブの[明るさ]に設定した値と一致する光の強さの場所)が表示されます。
スポットライト

スポットライトは指定の点から定義する方向にライトの円錐形状が光を照射します。光の強さは光源からの距離が増加するにつれて減少したり、減少しなかったりします(設定によって変わります)。また、この光の強度は円錐の形状の周辺でも減少します。強度が減少するエリアは2つの円錐の内側にある円錐で定義されます。スポットライトの例として、自動車のへッドライトがあります。
平行光

平行光は太陽のような無限に遠い光源から平行光を照射します。この光の強度はシーン内で一定です。また、[パラメータ]タブで天空光を追加できます。天空光は空からの光をシミュレーションしており、方向は一定していません。
プロジェクター

プロジェクターライトは指定の点からライトと対応付けされたピラミッドで定義される方向に光を放射します。この光の強さは光源からの距離が増加するにつれて減少したり、減少しなかったりします(設定によって変わります)。このライトから放射される光線は画像マッピングによってフィルタリングされ、その画像をシーンに投影します。プロジェクターの例にはスライドプロジェクターがあります。
カスタムライト

カスタムライトは光源のさまざまな方向での不定な光の強さを表現します。たとえば、部屋に吊り下げられている電球を表現するときに点光源を使用するとすべての方向に均一な光の強さを放射します。しかし、実際の光源はこのように作用しません。電球はソケットの向きに強い光が照射され、その強さはソケットに近づくと弱くなり、ソケットの裏側では光が照射されなくなります。カスタムライトは、このような実世界の“不規則性”を考慮に入れています。この光の強さは光源からの距離が増加するにつれて、減少することも、減少しないこともあります。
IESはIlluminating Engineering Society(照明光学協会)の略称です。web 上で測光データを転送/使用できるようにIESファイル形式が作成されました。基本的にIESファイルはASCII 形式で保存した配光(強度)の測定結果です。現実世界の光のデジタルな統計データと考えることができます。form•Zでは形と物理的に正確な配光特性を持つライトを作成するためにIESファイルを使用します。
主要な照明製造業者の多くがIESライトファイルを作成しており、各社のサイトからダウンロードすることができます。
エリアライト

エリアライトは、面が光を放射する物理的オブジェクトに対応しています。たとえば、湾曲したネオン管をモデリングし、そのオブジェクトをエリアライトに変換することができます。光の強さは光源からの距離が増加するにつれて、減少することも、減少しないこともあります。
線光源

線光源はエリアライトをサーフェース/ソリッドオブジェクトから派生させる方法と同じように、開いた/閉じたサーフェースオブジェクトから派生できます。しかし、線光源のオブジェクトはエリアライトのようにはレンダリングされません。光線はオブジェクト全体からというよりはオブジェクトのセグメントから照射されます線光源の強さは光源からの距離が増加するにつれて減少したり、減少しなかったりします(設定によって変わります)。
ライトパレットとダイアログ

[ライト]パレットでライトの定義や既存のライトの消去/編集を行うことができます。ライトのパラメータと位置は[ライトパラメータ]ダイアログで設定できます。ライトの位置も[変換]ツールを使用して操作できます。いろいろな品質レベルで影を表現するかしないかを設定することもできます。ライトの固有の機能、およびこれらをどのようにしてアクティブにするかについては、このセクションで後述します。
現在定義されている光源はすべて右図の[ライト]パレットに表示されます。このパレットが開かれていない場合は[パレット]メニューで表示できます。
環境光、平行光、点光源、スポットライト、プロジェクター、エリアライト、カスタム、ライン、環境光源といった種類のライトをアイコンで表示します。
新規のライトを作成したときのデフォルトのライトは平行光です。[ライト]パレット内のライト名をダブルクリックして表示される[ライトパラメータ]ダイアログで、ライトの属性を変更できます。
[ライトパラメータ]ダイアログはRenderZoneモードを選択していると表示内容が変わります。右上にあるのはレンダリングモードのリストです。あるレンダリングモードがアクティブになると、そのレンダリングモードに関連するライトパラメータが表示されます。たとえば、[RenderZone]を選択すると、RenderZoneに適用する複雑なパラメータが表示されます。反対に[シェーディング(フルモード)]を選択すると単純なパラメータが表示されます。
追加パラメータに対応するため、ダイアログは4つのタブ([強さ] [位置] [影] [パラメータ])に分かれています。[ライトパラメータ]ダイアログには以下の4つのタブがあります。各タブの内容は選択しているライトの種類に応じて変わることに注意してください。
強さタブ
このオプショングループを使用して、ライトの強さおよび減衰を詳細に設定できます。この設定はライトの種類に依存する場合があります。
[減衰]:このメニューで、光に照らされたサーフェースからの光の距離が増すにつれて、ライトの強さを減少させるかどうかを選択できます。また、5つのオプションがあり、いずれもさまざまな公式を使用して、光源によって照らされるときのサーフェースピクセルのライトの強さを計算します。
[標準]の強さオプションを選択すると、半径パラメータ(点光源、カスタム、エリアライト、線光源)または光源点から注視点までの距離(スポットライト、プロジェクター)をライトの強さの計算に組み込みます。この距離は以降の説明では“r”と表記されます。
[一定]:サーフェースピクセルのライトの強さはシーン内で一定です。
[線形(固定)]:サーフェースピクセルが光源から r の距離の場所にある場合、サーフェースピクセルのライトの強さは[標準]フィールドに入力した値になります。サーフェースピクセルがもっと遠くにある場合、ライトの強さは線形的に減少します。たとえば、[標準]の強さに100%を設定し、サーフェースピクセルが光源から r の2倍の距離の場所にある場合、ライトの強さは50%(100%/2)になります。サーフェースピクセルが光源から r の8倍の距離の場所にある場合、ライトの強さは12.5%(100%/8)になります。サーフェースピクセルが光源から r の距離よりも近い場所にある場合、ライトの強さはおおよそ線形的に増加しますが、最大値を超えることはありません。たとえば、サーフェースピクセルが光源から r の距離の半分の場所にある場合、ライトの強さは約200%(100%/0.5)になります。しかし、サーフェースピクセルが光源に近づくにつれて、ライトの強さは線形的に増えなくなり、最大値になったところで増加しなくなります。これにより、光源に非常に近づいているピクセルに不当に強い光が当たって、シーンに予想外の露出過多が現れるのを回避します。
[2乗(固定)]:サーフェースピクセルが光源から r の距離の場所にある場合、サーフェースピクセルのライトの強さは[標準]フィールドに入力した値になります。サーフェースピクセルがもっと遠くにある場合、ライトの強さは距離の2乗の割合で減少します。たとえば、[標準]の強さに100%を設定し、サーフェースピクセルが光源から r の2倍の距離の場所にある場合、ライトの強さは25%(100%/(2*2))になります。サーフェースピクセルが光源から r の8倍の距離の場所にある場合、ライトの強さは1.5625%(100%/(8*8))になります。サーフェースピクセルが光源から r の距離よりも近い場所にある場合、ライトの強さはおおよそ距離の2乗の割合で増加しますが、最大値を超えることはありません。たとえば、サーフェースピクセルが光源から r の距離の半分の場所にある場合、ライトの強さは約400%(100%/(0.5*0.5))になります。しかし、サーフェースピクセルが光源に近づくにつれて、ライトの強さは2乗の割合では増えなくなり、最大値になったところで増加しなくなります。これにより、光源に非常に近づいているピクセルに不当に強い光が当たって、シーンに予想外の露出過多が現れるのを回避します。2乗減衰は、上記のように、光源の近くにあるためにサーフェースピクセルの強さが最大値で制限されていない限り、物理的に正確なライトの光を表現します。
[線形(非固定)]:光源から r の距離よりも近い場所にあるピクセルのライトの強さに制限がないこと以外は[線形(固定)]オプションと同じです。そのため、ピクセルは露出過多になりやすくなります。露出過多になりやすい状況が不都合な場合は[線形(固定)]オプションを使用してください。
[2乗(非固定)]:光源から r の距離よりも近い場所にあるピクセルのライトの強さに制限がないこと以外は[2乗(固定)]オプションと同じです。そのため、ピクセルは露出過多になりやすくなります。露出過多になりやすい状況を避けたい場合は[2乗(固定)]オプションを使用してください。2乗(非固定)減衰は物理的に1番正確なライトの光を表現します。
[正確]の強さオプションを選択すると、ライトの半径パラメータまたは距離パラメータを使用しないでライトの強さを決定します。[正確な強さ]オプションにある[測光特性]または[放射特性]の強さをもとに照明の計算を行います。レンダリングすると、コンピュータの画面が光源によって露出したカメラのフィルムの代わりになります。フィルムの感度はいくつかの平均的な明るさの電球がある室内空間をうまく露出する値に設定します。露出不足や露出過多の画像は[画像の露出]オプションで修正することができます。[標準]の強さおよび[正確]の強さの両方で、[減衰]メニューを使用できます。物理的に正確な露出をするには[2乗(非固定)]減衰オプションを選択する必要があります。ただし、多くの場合は視覚的に魅力的な画像を物理的に正確な照明で生成することは避けるべきです。そのため、[正確]の強さオプションは[2乗(非固定)]以外の減衰オプションと組み合わせます。
[標準]:このオプションを選択すると、[明るさ]のフィールドに入力した値がライトの強さとなります。パーセンテージで表現します。すべてのライトの種類に同じようにこのパラメータは入力されますが、それぞれの種類への適用のされ方は次のように異なります。
- 環境光、平行光、環境光源:このライトの強さは一定なので、すみずみまで強さの値は一様に適用されます。
- 点光源、カスタム:このライトで[減衰]メニューから[コンスタント]を選択すると、すみずみまで強さは一様なままになります。[線形]減衰または[2乗]減衰を選択すると、[標準]フィールドに入力した値が、ライトの原点の[位置]および[半径]に入力した値で定義される球体サーフェースの中心点に適用されます。ライトの強さは球体サーフェースと中心点の間で最大です。球体サーフェースから離れる(中心点から[半径]より大きな距離になる)につれ、光の強さは減少します。光の強さが減少する度合は[線形]減衰を選択したか、[2乗]減衰を選択したかで決まります。点光源の分散はすべての方向に対して一様ですが、カスタムライトの分散の強さは[配光設定]ダイアログで定義したパラメータによります。
- スポットライト、プロジェクター:このライトについて[コンスタント]減衰を選択すると、光の強さはすみずみまで一様なままです。[線形]または[2乗]を選択すると、[標準]に入力した値が[注視点]で適用されます(次のセクションを参照)。強さは光源点と注視点の間で最大で、注視点を超えると選択した減衰([線形]または[2乗])にしたがって減少します。
- エリアライト、線光源:このライトに[減衰]メニューから[コンスタント]を選択すると、光の強さはすみずみまで一様なままです。[線形]または[2乗]を選択すると、[標準]フィールドに入力した値は[半径]と同じ距離にあるすべてのシェーディングポイントに適用されます。ライトの強さはこれらのポイントと光源点との間で最大です。これらポイントから離れる(中心点から[半径]より大きな距離となる)につれ、光の強さは減少します。光の強さが減少する度合いは[線形]または[2乗]の減衰のどちらを選択したかによって決まります。
ライト強度が最大のエリアにサーフェースがあるときは、過露出の危険が必ずあることに注意してください。このような効果が望ましくない場合は[コンスタント]を使用してくたさい。
[正確...]:このオプションを選択すると、ライトの強さは物理的に正確な単位によって表示されます。[正確な強さ]パラメータは、このオプションの下側にあります。パラメータはライトの種類によって異なります。平行光の[正確な強さ]ダイアログは平行光固有のものです。他の7つの種類のライトは同じパラメータを共有しています。ただし、スポットライトと点光源の[明るさ]パラメータはルーメンまたはカンデラの単位を使用して定義できます。エリアライト、線光源、環境光源、カスタムライトの明るさの設定はルーメンだけを使用します。それぞれのライトの種類の正確な強さを得る方法は以降のセクションで詳しく説明します。
位置タブ
このオプショングループにはライトの[原点]と[注視点]があります。ドロップダウンメニューで[場所・日付・タイムゾーン]や[高度と方位角]を選択することもできます。このライトの方向を指定する方法は、地上のさまざまな場所のある日時における太陽やオブジェクトによって落ちる影を計算できます。[エクステンション]メニューには[Sun Animation]エクステンションもあります。このエクステンションのコントロールはライトのダイアログに[位置]タブにある[太陽]の設定に似ています。
影タブ
このオプショングループはライトから影を落とすかどうかと落とす影の種類を指定します。[影]ボックスをチェックすると影を落としますが、他のダイアログボックスで他のオプションを設定する必要もあります。以下でその詳細を説明します。
影の種類は[影]チェックボックスの下側のメニューで設定します。
[種類]:[ソフト(マッピング)]、[ハード(レイトレーシング)]、[ハード(高速)]:これらの項目の1つを選択すると、影は影マッピング、レイトレーシング、レイトレーシングと影マッピングの組み合わせによって生成されます。レイトレーシングと影マッピングを組み合わせる場合、影マッピングを使用してレイトレーシングでの影の生成を高速化します。この場合には追加のメモリが必要です。
[透明]:このオプションはレイトレーシングでの影を生成する場合にのみ使用できます。このオプションをオンにすると、透明なサーフェースを通して光が照射する場合にライトは透明の影を生成します。シーン内に透明なサーフェースがない場合でも、この影をレンダリングするには時間がかかります。表示される透明なサーフェースがない場合またはライトが透明なオブジェクトを照らさない場合にレンダリングを高速化するには、このオプションをオフにします。[RenderZoneオプション]ダイアログの[影]メニューから[ライトごとに]項目を選択すると、それぞれの光源の[透明]影オプションが考慮されます。メニューから[全てを不透明]オプションまたは[全てを透明]オプションを選択すると、それぞれのライトの[透明]オプションは上書きされます。
RenderZoneで[RenderZoneオプション]ダイアログにある[レンダリングの種類]メニューからZ-バッファ表示方式またはレイトレーシング表示方式を選択すると、シーン内のオブジェクトは影を表現できます。影を落とすには、以下に述べるパラメータを正しく設定しなければなりません。
- オブジェクトの影を受ける属性はオンにしなければなりません。新しいオブジェクトを作成するとき、影をおとす属性はデフォルトでオンになります。
- 少なくとも1つのライト(環境光は除く)について[有効]属性をオンにしなければなりません。この属性は[ライトパラメータ]ダイアログや[ライト]パレットでオンにします。
- 影を表現するライトはダイアログボックスで[影]オプションを選択しなければならず、[影]ポップアップメニューで影の種類(ソフト(マッピング)、ハード(レイトレーシング)、ハード(高速))を選択しなければなりません。同時に複数のライトが影を落とすことができますが、有効と影のパラメータがオンのライトだけです。
- [RenderZone*]コマンドを実行するときは、[RenderZoneオプション]ダイアログの[影]オプションをオンにしなければなりません。このダイアログボックスは[RenderZone*]メニュー項目で直接表示してから、操作を実行できます。
[種類]メニューで影の種類に[ソフト(マッピング)]を選択したときは、影の品質に影響を及ぼす追加オプションを[影]タブから選択する必要があります。一般に、影をおとすことを追加すると、シーンのレンダリング計算時間は大幅に増大します。ソフトな影を使用するときは、影の質が高くなるほど、レンダリングの計算時間が長くなります。したがって、最初は低品質の影を利用し、最終的なレンダリングを行うときにだけ高品質の影を設定することを一般にお勧めします。また、ライトが追加されるたびにレンダリングに必要な時間は長く、追加メモリは大きくなります。一般にソフトな影の方がハードな影よりもメモリ量は相当大きくなりますが、処理は高速です。
[品質]:影の品質([低い] [標準] [高い])をこのメニューで選択できます。質が低いほど時間はかからずメモリは少なくてすみますが、影の周囲に目立つギザギザができます。高品質の影だとギザギザは小さくなりますが、時間とメモリがより必要になります。
[エッジの滑らかさ]:このスライダーが影のエッジのなめらかさを制御します。0で最もくっきりしたエッジが生成され、100で最もぼんやりしたエッジが生成されます。
[許容範囲]:このパラメータで自身に影を投げかけるアーティファクトを削除できます。[エッジの滑らかさ]パラメータを大きくすると、サーフェースが自身に影を投げかける可能性があります。このアーティファクトは、そのサーフェース上に、ランダムなパターンの暗色ピクセルとして表示されます。[許容範囲]パラメータを大きくすると、アーティファクトが減少します。しかし、[許容範囲]の値を大きくすると、影の面積が縮小する可能性があります。場合によってはオブジェクトが平面上に直接置かれているのに、平面の上方に浮かんで見える効果を生成することがあります。
[解像度]:[シェーディングレンダリング*]と[RenderZone*]の[ソフト]な影を生成するにはレンダリングを行う前に影を落とす各光源について影マッピングを作成します。これらのマップはレンダリングの間に使用され、レンダリングシーンに影を組み込みます。これらの影マッピングはさまざまなサイズ(解像度レベル)で生成できます。
[n回分の画像サイズ]オプションを選択すると、影マッピングの解像度はレンダリングを行うときの画像のサイズに依存します。たとえば、画像サイズが500×500ピクセルで値2を入力すると、影マッピングは1000×1000ピクセルの解像度で生成されます。このオプションを選択することによって、レンダリングからレンダリングにかけてウィンドウのサイズが変わる場合でも一定の影品質を保証できます。[m×nピクセル]オプションを選択すると、テキストフィールドに入力された値によって定義される固定解像度で影マッピングが作成されます。このオプションは画像サイズとは無関係に、レンダリングのたびに影マッピングで消費されるメモリ量が一定になることを保証します。ただし、画像サイズが大きくなると影の品質が低下することがあります。
[影をおとす範囲]:このメニューの3つのコマンドから1つを選択できます。視点の外側のオブジェクトが影をおとすようにするかどうかを決定します。この選択は影マッピングのサイズと間接的な方法で落とされる影の質に影響を及ぼします。
[すべてのオブジェクト]:このオプションを選択すると(デフォルト)、影をおとすプロジェクト内のすべてのオブジェクトについて影マッピングが生成されます。完全に視点の外にあるものについてもです。
[完全に見えている面]:このオプションを選択すると、画面に完全に表示される面だけを使用して影マッピングを決定します。
[完全に見えているオブジェクト]:このオプションを選択すると、表示された視点に完全に表示される、影をおとすオブジェクトだけを使用して影マッピングが計算されます。最後の2つのオプションでは影の明晰さと品質は向上しますが、ウィンドウに表示されないオブジェクトが表示されているオブジェクトに影を落とすたびに不正確な影が生成されます。




(c)大きな地平面オブジェクトが影をおとしたため品質が低くなった影
(d)大きな地平面オブジェクトが影をおとす属性をオフにして明瞭になった影
これらは[影をおとす範囲]オプションと一緒に考慮してください。表示オブジェクトに影を落とさない、視点外部のオブジェクトがある場合は[完全に見えている面]オプションまたは[完全に見えているオブジェクト]オプションを選択してください。この結果、影マッピングは小さく、影は明瞭になります。
[ソフト]な影の生成に使用される影マッピングはメモリを非常に集中して使用するので、使用中のマシンのメモリ量が比較的限られている場合は注意して使用する必要があります。影マッピング内のビクセルごとに4 バイトのメモリが必要です。たとえば、500×500 ピクセルの影マッピングには1メガバイトのメモリが必要です。影マッピングのサイズが一定であると想定すると、平行光、点光源、カスタムライトと比較して、スポットライトおよびプロジェクターが最も質のよい影を生成します。点光源とカスタムライトの影マッピングのメモリ使用量が最も多くなり、スポットライト、プロジェクター、平行光に必要なメモリ量より最高6倍多くなります。ライトごとに別々の影マッピングを作成する必要がある場合、あまりに多くの影を落とす光を使用すると、メモリ不足になる危険が大きくなります。エリアライトおよび線光源では、影マッピングを使用するためのオプションは提供されていません。これらのライトはレイトレーシングの影だけを表現します。
[ハード(レイトレーシング)]な影は影マッピングを使用せず、レイトレーシング手続きを使用します。平行光、点光源、カスタムライト、スポットライト、プロジェクターは明瞭なレイトレーシングの影を生成します。エリアライトと線光源はソフトなレイトレーシングの影を生成します。メモリ要件は最小限ですが、一般に処理時間は長くなります。
[ハード(高速)]な影はレイトレーシングだけではなく、影マッピングを使用してレイトレーシング手続きを高速化します。メモリの必要用量はソフトな影と同じです。
レンダリングシーンでどの種類の影を使用するかは、生成しようとしている効果で決まります。影はライトの属性であり、影の種類はライトごとに独立に設定できます。このため、同じレンダリングシーンの内部で2つの種類の影を混在させることができます。
パラメータタブ
共通オプション
[レンズフレア]:このオプションはRenderZoneポストプロセスのレンズフレアの操作として、ライトよりレンズフレアを生じるかどうかを決定します。詳細については『RenderZone マニュアル』の該当セクションを参照してください。
[グロー]:このオプションをオンにすると、ライトはZ-バッファレンダリングモードおよびレイトレーシングレンダリングモードでレンダリングしたとき、輝いているように見える3次元の形状を示します。詳細については『RenderZone マニュアル』で説明します。
[グローオプション...]:このボタンをクリックすると、[グローオプション]ダイアログを表示します。詳細については『RenderZone マニュアル』を参照してください。