| 開発者 | グレッグ・ワード |
|---|---|
| 初回リリース | 1985年 |
| 安定版リリース | 5.4 (2023-11-05) [±] |
| プレビューリリース | 非 [±] |
| 書かれた | C |
| オペレーティング·システム | Unix、Linux、OS X、Windows |
| ライセンス | プロジェクト固有のオープンソース |
| Webサイト | http://www.radiance-online.org |
Radiance は、もともと Greg Ward によって書かれた、照明シミュレーションを実行するためのツール スイートです。 [1]レンダラーと、シミュレートされた光のレベルを測定するための他の多くのツールが含まれています。すべての照明計算をレイ トレーシングで実行し、オクツリーデータ構造を使用することで高速化されています。Radiance は、高ダイナミック レンジ イメージングの概念の先駆けであり、光のレベルは (理論上) 最大値の小数比率 (例: 0.0 ~ 1.0) や最大値の整数分数 (0 ~ 255/255) ではなく、無制限の値です。また、モンテ カルロ法を使用して、点に当たる光をサンプリングする グローバル イルミネーションも実装しています。
Greg Ward は、1985 年にローレンス バークレー国立研究所に在籍中に Radiance の開発を開始しました。ソース コードは、再配布を禁止するライセンスの下で配布されました。2002 年 1 月、Radiance 3.4 は、より制限の少ないライセンスの下で 再ライセンスされました。
ある研究では、Radiance が建築照明シミュレーションに最も一般的に役立つソフトウェア パッケージであることがわかりました。また、この研究では、Radiance が他の多くのパッケージの基盤となるシミュレーション エンジンとして機能していることも指摘されています。[2]
HDR画像フォーマット
| ファイル名拡張子 |
.pic、.hdr、.rgbe、.xyze |
|---|---|
| インターネットメディアの種類 |
イメージ/vnd.radiance |
| 統一型識別子 (UTI) | 公共の輝き[3] |
| 開発者 | ランドルフ・フリッツ、グレッグ・ワード |
| 初回リリース | 2009年3月4日 |
| フォーマットの種類 | 画像ファイル形式 |
| 標準 | http://radsite.lbl.gov/radiance/refer/filefmts.pdf |
| オープンフォーマット? | オープンソース |
| Webサイト | http://radsite.lbl.gov/radiance/ |
Radiance は HDR 画像を保存するための画像形式を定義しました。これは現在RGBE 画像形式と呼ばれています。これは最初の (そして長い間唯一の) HDR 画像形式であったため、この形式は他の多くの[どの? ]ソフトウェア パッケージによってサポートされています。 [引用が必要]
ファイルは署名 '#?RADIANCE' で始まり、その後に画像を生成するために使用されたコマンドをリストする数行が続きます。この情報により、レンダラーrpict は部分的に完了したレンダリングを続行できます (手動またはradフロントエンドを使用)。また、行 'FORMAT=32-bit_rle_rgbe' を含む、 key = value宣言もあります。
この後、ヘッダーの終わりを示す空白行が続きます。 1 行で解像度とピクセル順序を記述します。Radiance ツールによって生成される場合、これは常に「-Y高さ+X幅」の形式になります。 この行の後にはバイナリ ピクセル データが続きます。
Radiance は、光の値を赤、緑、青のそれぞれに 1 つずつ、浮動小数点トリプレットとして計算します。しかし、各チャネルに完全な倍精度浮動小数点を格納する (8 バイト × 3 = 24 バイト) のは、最新のシステムでも負担になります。画像データの圧縮には 2 つの段階が使用されます。最初の段階では、3 つの浮動小数点値をスケーリングして、3 つのうち最も明るい値から取得した共通の 8 ビット指数を共有します。次に、各値は 8 ビットの仮数部 (小数部分) に切り捨てられます。結果は、各ピクセルに対して 4 バイト、つまり 32 ビットになります。これにより、色の忠実度が低下しますが、6:1 の圧縮が実現されます。
2 番目のステージでは、 32 ビットのピクセル値に対してランレングス エンコーディングを実行します。これは、ほとんどのレンダリングされた画像のサイズに限られた影響しか与えませんが、高速かつシンプルです。
シーン記述形式
放射輝度シーンは、1 つ以上のオブジェクト ファイルから作成されます。.rad形式は単純なテキスト ファイルです。個々のジオメトリ オブジェクトを指定したり、行の先頭に感嘆符 '!' を付けてプログラムを呼び出すことができます。[4]
ジオメトリを指定する場合、最初の行は
修飾子 タイプ 名
次の 3 行には、パラメータの数を指定する整数で始まるパラメータが含まれます。パラメータは同じ行に記述する必要はなく、読みやすくするために複数の行に記述できます。
モディファイアはマテリアルを作成し、連結して 1 つを次の モディファイアに変更することができます。
例えば:
マイボールラッド
クローム球
0
0
4 0 0 10
10
これをxformプログラム (後述) を使用して別のファイルに配列することができます。
シーン.rad
ボイドメタルクロム
0
0
5 0.8 0.8 0.8
0.9 0.0
!xform -a 5 -t 20 0 0 マイボール.rad
これにより、クロムマテリアルと、X 軸に沿って 20 単位間隔で配置された 5 つのクロム球が作成されます。
シーンを使用する前に、oconvツールを使用して octree ファイル (「.oct」) にコンパイルする必要があります。ほとんどのレンダリング ツール (以下を参照) は、octree ファイルを入力として使用します。
ツール
Radiance スイートには 50 を超えるツールが含まれています。これらは、 Unixおよび Unix ライクなシステムで使用するために設計されています。ツールの多くはフィルターとして機能し、標準入力から入力を受け取り、処理された結果を標準出力に送信します。これらは、Unix のコマンド ラインで使用して新しいファイルにパイプしたり、上記のように Radiance シーン ファイル (.rad) 自体に含めることができます。
ジオメトリ操作
いくつかの放射輝度プログラムは、指定されたファイルまたは標準入力から読み取り、標準出力に書き込むことによって、放射輝度シーン データを操作します。
- xform を使用すると、'.rad' ファイルに対して任意の数の変換を実行できます。変換には、平行移動、回転 (3 つの軸のいずれかの周り)、およびスケーリングが含まれます。また、多次元配列も実行できます。
- replmarks は、シーン内の特定の三角形を別のファイルのオブジェクトに置き換えます。3D モデラーでモデリングするときにシーンを簡素化するために使用されます。
発電機
ジェネレーターはシーンのモデリング作業を簡素化し、指定されたパラメータから特定のタイプのジオメトリを作成します。
- genbox はボックスを作成します。
- genrprism は、指定された 2D ポリゴンを Z 軸に沿って押し出します。
- genev は、指定された関数から回転面を作成します。
- genworm は、パスの (x、y、z) 座標とワームの半径という 4 つの関数を指定してワームを作成します。
- gensurf は、指定された関数からテッセレーションされたサーフェスを作成します。
- gensky はCIE標準のスカイ分布の説明を作成します。
ジオメトリコンバーター
Radiance には、シーン ジオメトリを他の形式から変換するためのプログラムが多数含まれています。これには次のものが含まれます。
- nff2rad はNFFオブジェクトを Radiance ジオメトリに変換します。
- obj2rad は、Wavefront .objファイルを Radiance ジオメトリに変換します。
- obj2mesh は、 Wavefront .objファイルを Radianceコンパイル メッシュに変換します。これは、最近追加されたメッシュプリミティブを使用してシーンに含めることができます。obj2radを使用するよりも効率的で、テクスチャ座標が含まれます。
レンダリング
- rpict はレンダラーであり、標準出力に Radiance イメージを生成します。
- rvuはインタラクティブなレンダラーであり、X11ウィンドウを開いて進行中のレンダリングを表示し、ビューを変更できるようにします。
- rtrace は、シーン内の特定の光線をトレースするツールです。標準入力でこれらの光線のパラメータを読み取り、標準出力にライトの値を返します。rtraceは他のツールによって使用されるほか、 vwrayプログラムを使用してパイプされるビュー光線を生成することで、rtrace自体でイメージをレンダリングすることもできます。
- dayfactは、グリッド上の輝度値と日光係数を計算するインタラクティブ スクリプトです。
- findglare は画像またはシーンを取得し、人間の目に不快なグレアを引き起こす明るい光源を検出します。
- mkillum は、表面 (窓やランプのシェードなど) を取得し、そこを通過する照明の寄与を計算します。このデータは、その後、これらの二次光源からの照明をより正確かつ効率的に計算するために、illumマテリアル モディファイアによって使用されます。
画像の操作と分析
- pfilt は画像をフィルタリングします。アンチエイリアス画像を実現するための一般的な手法は、目的のサイズよりも数倍大きいサイズでレンダリングし、その後pfilt を使用して画像をフィルタリングすることです。
- pcompos は、アンカー座標を使用するか、複数の画像を重ねて追加することで、画像を合成します。
- pcond条件の画像。暗い部分の焦点のぼけ、グレアによるベール、低光量での薄明視または暗所視による色彩損失など、人間の視覚反応のさまざまな効果をシミュレートできます。
- pinterp は、 2 つの画像の両方にz バッファがある場合に、それらの画像の間を補間します。ギャップを埋めるためにrtrace を使用します。単純なアニメーションのレンダリング速度を高速化するために使用されます。
- ximage は、HDR Radiance 画像を表示するための画像ビューアです。シミュレートされた露出を調整し、 pcondの人間の視覚効果の一部を適用できます。
統合
- rad は、シーンと複数のカメラ ビューを記述する '.rif' ファイルを読み取るフロントエンドです。以前は、makeとmakefile が同様の役割で使用されていました。radは、oconv、mkillum、rpict / rviewなどのプログラムを調整して、ソース シーン ファイルからイメージ (またはプレビュー) をレンダリングします。
- trad は、Tcl/Tk を使用したradの GUI フロントエンドです。
- ranimateは、多くのプログラムを調整して仮想ウォークスルーアニメーション (カメラは移動しますが、シーンは静止しています)を生成するフロントエンドです。
参考文献
- ^ Luebkeman, Chris; Simondetti, Alvise (2006 年 6 月 25 ~ 30 日)、「Practice 2006: Toolkit 2020」、Intelligent Computing in Engineering and Architecture: 13th EG-ICE Workshop、Springer、p. 442、ISBN 3-540-46246-5。
- ^ ジェフリー・G・ロイ、「建築設計に適した照明シミュレーションパッケージの比較研究」、マードック大学、2000年10月
- ^ "CGImageSource.SupportedTypes". Claris FileMaker MBS プラグイン. MonkeyBread Software.
- ^ James D. Murray、William vanRyper (1996 年 4 月)。『Encyclopedia of Graphics File Formats, Second Edition』。O'Reilly。ISBN 1-56592-161-5. 2014年2月27日閲覧。
出典
- グレッグ・ウォード・ラーソンとロブ・シェイクスピア『レンダリング・ウィズ・ラディアンス』モーガン・カウフマン、1998年。ISBN 1-55860-499-5
外部リンク
- ラディアンスホームページ
- ラディアンスオンライン
- Radiance によるオンラインレンダリング
- Anyhere Software - グレッグ・ワードのコンサルティング会社
