This is the documentation for Enlighten.
9.2.4. GeoRadiosity 向けのシーンの構成
すべての Enlighten シーンを GeoRadiosity で表示できます。High Level Build System を使用した最も単純なケースでは、プリコンピュートのために生成された .scene ファイルを開くだけです。GeoRadiosity で正しい向き、スケール、三角のカリング設定のシーンを表示するには、追加データを提供する必要がある場合があります。
GeoRadiosity ではデフォルトで右手座標系を使用します。カメラは X および Y 方向を水平面として扱い、Z 方向を「上」軸として扱います。また、ワールドのデフォルト サイズとすべてのジオメトリが反時計回りの三角を持つことも前提とされます。これらの設定は、いくつかの方法で変更できます。
カメラの向きを指定する最も簡単な方法は、.scene ファイルの scene 要素に axes 属性を追加することです。
<?xml version="1.0" encoding="utf-8"?> <scene name="ubox_2sys_SH" axes="+x+z+y" version="1"> ...
属性文字列により、求める座標系の順序と向きをエンコードします。文字列は 3 軸 (x、y、z) のリストであり、それぞれ GeoRadiosity のデフォルトと比較した向きを + または - のプレフィックスで指定します。従って、+x-y+z ならば y 軸が反転し、 +x+z+y ならば z と y が入れ替わります。同様に、+x+y+z は変更がないことを示します。左手座標系では、反転と入れ替えの数を奇数にします。反転と入れ替えの数が偶数の場合、右手座標系になりますがシーンは回転します。
以下のように、GeoRadiosity が Lua コンソールで実行中でもカメラの向きを指定できます。
app.SetWorldPermutation("+x+y+z")
シーンは数百単位の幅とみなされており、GUI 要素とカメラ速度はデフォルトで、このようなシーンを簡単に表示および移動できるようにしています。(選択したモデリング単位などによって) このようなシーンでない場合、Rendering メニューのカメラ速度制御と以下の Lua コマンドで、GeoRadiosity の動作を変えられます。
app.SetWorldUnitScale(0.01)
Enlighten は三角のワインディング順に依存しませんが、GeoRadiosity のレンダラーではレンダリング中のバック フェースのカリングにワインディング順を使用しており、反時計回りのワインディング順 (または左手座標系で測定される時計回り) を前提としています。正しくカメラの向きを指定した後にシーンがバック フェースのみを表示する場合、Enlighten に提供する三角を反転させる必要があります。三角の向きは、各三角の 2 つのインデックスを入れ替えると安全に反転できます。