| 2 |
|
<!-- RCSid $Id$ --> |
| 3 |
|
<head> |
| 4 |
|
<title> |
| 5 |
< |
The RADIANCE 5.2 Synthetic Imaging System |
| 5 |
> |
The RADIANCE 6.0 Synthetic Imaging System |
| 6 |
|
</title> |
| 7 |
|
</head> |
| 8 |
|
<body> |
| 10 |
|
<p> |
| 11 |
|
|
| 12 |
|
<h1> |
| 13 |
< |
The RADIANCE 5.2 Synthetic Imaging System |
| 13 |
> |
The RADIANCE 6.0 Synthetic Imaging System |
| 14 |
|
</h1> |
| 15 |
|
|
| 16 |
|
<p> |
| 83 |
|
(ovals). |
| 84 |
|
The central program is <i>rpict</i>, which produces a picture from a scene |
| 85 |
|
description. |
| 86 |
< |
<i>Rview</i> is a variation of rpict that computes and displays images |
| 86 |
> |
<i>Rvu</i> is a variation of rpict that computes and displays images |
| 87 |
|
interactively, and rtrace computes single ray values. |
| 88 |
|
Other programs (not shown) connect many of these elements together, |
| 89 |
|
such as the executive programs |
| 822 |
|
Also, rather than roughness, specular power is used, which has no |
| 823 |
|
physical meaning other than larger numbers are equivalent to a smoother |
| 824 |
|
surface. |
| 825 |
+ |
Unlike other material types, total reflectance is the sum of |
| 826 |
+ |
diffuse and specular colors, and should be adjusted accordingly. |
| 827 |
|
<pre> |
| 828 |
|
mod ashik2 id |
| 829 |
|
4+ ux uy uz funcfile transform |
| 834 |
|
<p> |
| 835 |
|
|
| 836 |
|
<dt> |
| 837 |
+ |
<a NAME="WGMDfunc"> |
| 838 |
+ |
<b>WGMDfunc</b> |
| 839 |
+ |
</a> |
| 840 |
+ |
|
| 841 |
+ |
<dd> |
| 842 |
+ |
WGMDfunc is a more programmable version of <a HREF="#Trans2">trans2</a>, |
| 843 |
+ |
with separate modifier paths and variables to control each component. |
| 844 |
+ |
(WGMD stands for Ward-Geisler-Moroder-Duer, which is the basis for |
| 845 |
+ |
this empirical model, similar to previous ones beside Ashik2.) |
| 846 |
+ |
The specification of this material is given below. |
| 847 |
+ |
<pre> |
| 848 |
+ |
mod WGMDfunc id |
| 849 |
+ |
13+ rs_mod rs rs_urough rs_vrough |
| 850 |
+ |
ts_mod ts ts_urough ts_vrough |
| 851 |
+ |
td_mod |
| 852 |
+ |
ux uy uz funcfile transform |
| 853 |
+ |
0 |
| 854 |
+ |
9+ rfdif gfdif bfdif |
| 855 |
+ |
rbdif gbdif bbdif |
| 856 |
+ |
rtdif gtdif btdif |
| 857 |
+ |
A10 .. |
| 858 |
+ |
</pre> |
| 859 |
+ |
|
| 860 |
+ |
The sum of specular reflectance (<I>rs</I>), specular transmittance (<I>ts</I>), |
| 861 |
+ |
diffuse reflectance (<I>rfdif gfdif bfdif</I> for front and <I>rbdif gbdif bbdif</I> for back) |
| 862 |
+ |
and diffuse transmittance (<I>rtdif gtdif btdif</I>) should be less than 1 for each |
| 863 |
+ |
channel. |
| 864 |
+ |
|
| 865 |
+ |
<p> |
| 866 |
+ |
|
| 867 |
+ |
Unique to this material, separate modifier channels are |
| 868 |
+ |
provided for each component. |
| 869 |
+ |
The main modifier is used on the diffuse reflectance, both |
| 870 |
+ |
front and back. |
| 871 |
+ |
The <I>rs_mod</I> modifier is used for specular reflectance. |
| 872 |
+ |
If "void" is given for <I>rs_mod</I>, |
| 873 |
+ |
then the specular reflection color will be white. |
| 874 |
+ |
The special "inherit" keyword may also be given, in which case |
| 875 |
+ |
specular reflectance will share the main modifier. |
| 876 |
+ |
This behavior is replicated for the specular transmittance modifier |
| 877 |
+ |
<I>ts_mod</I>, which also has its own independent roughness expressions. |
| 878 |
+ |
Finally, the diffuse transmittance modifier is given as |
| 879 |
+ |
<I>td_mod</I>, which may also be "void" or "inherit". |
| 880 |
+ |
Note that any spectra or color for specular components must be |
| 881 |
+ |
carried by the named modifier(s). |
| 882 |
+ |
|
| 883 |
+ |
<p> |
| 884 |
+ |
|
| 885 |
+ |
The main advantage to this material over |
| 886 |
+ |
<a HREF="#BRTDfunc">BRTDfunc</a> and |
| 887 |
+ |
other programmable types described below is that the specular sampling is |
| 888 |
+ |
well-defined, so that all components are fully computed. |
| 889 |
+ |
|
| 890 |
+ |
<p> |
| 891 |
+ |
|
| 892 |
+ |
<dt> |
| 893 |
|
<a NAME="Dielectric"> |
| 894 |
|
<b>Dielectric</b> |
| 895 |
|
</a> |
| 1517 |
|
A section of text meant to depict a picture, perhaps using a special purpose font such as hexbit4x1.fnt, calls for uniform spacing. |
| 1518 |
|
Reasonable magnitudes for proportional spacing are between 0.1 (for tightly spaced characters) and 0.3 (for wide spacing). |
| 1519 |
|
|
| 1520 |
+ |
<p> |
| 1521 |
+ |
|
| 1522 |
+ |
<dt> |
| 1523 |
+ |
<a NAME="Spectrum"> |
| 1524 |
+ |
<b>Spectrum</b> |
| 1525 |
+ |
</a> |
| 1526 |
+ |
|
| 1527 |
+ |
<dd> |
| 1528 |
+ |
The spectrum primitive is the most basic type for introducing spectral |
| 1529 |
+ |
color to a material. |
| 1530 |
+ |
Since materials only provide RGB parameters, spectral patterns |
| 1531 |
+ |
are the only way to superimpose wavelength-dependent behavior. |
| 1532 |
+ |
|
| 1533 |
+ |
<pre> |
| 1534 |
+ |
mod spectrum id |
| 1535 |
+ |
0 |
| 1536 |
+ |
0 |
| 1537 |
+ |
5+ nmA nmB s1 s2 .. sN |
| 1538 |
+ |
</pre> |
| 1539 |
+ |
|
| 1540 |
+ |
<p> |
| 1541 |
+ |
The first two real arguments indicate the extrema of the |
| 1542 |
+ |
spectral range in nanometers. |
| 1543 |
+ |
Subsequent real values correspond to multipliers at each wavelength. |
| 1544 |
+ |
The nmA wavelength may be greater or less than nmB, |
| 1545 |
+ |
but they may not be equal, and their ordering matches |
| 1546 |
+ |
the order of the spectral values. |
| 1547 |
+ |
A minimum of 3 values must be given, which would act |
| 1548 |
+ |
more or less the same as a constant RGB multiplier. |
| 1549 |
+ |
As with RGB values, spectral quantities normally range between 0 |
| 1550 |
+ |
and 1 at each wavelength, or average to 1.0 against a standard |
| 1551 |
+ |
sensitivity functions such as V(lambda). |
| 1552 |
+ |
The best results obtain when the spectral range and number |
| 1553 |
+ |
of samples match rendering options, though resampling will handle |
| 1554 |
+ |
any differences, zero-filling wavelenths outside the nmA to nmB |
| 1555 |
+ |
range. |
| 1556 |
+ |
A warning will be issued if the given wavelength range does not |
| 1557 |
+ |
adequately cover the visible spectrum. |
| 1558 |
+ |
|
| 1559 |
+ |
<p> |
| 1560 |
+ |
|
| 1561 |
+ |
<dt> |
| 1562 |
+ |
<a NAME="Specfile"> |
| 1563 |
+ |
<b>Specfile</b> |
| 1564 |
+ |
</a> |
| 1565 |
+ |
|
| 1566 |
+ |
<dd> |
| 1567 |
+ |
The specfile primitive is equivalent to the spectrum type, but |
| 1568 |
+ |
the wavelength range and values are contained in a 1-dimensional |
| 1569 |
+ |
data file. |
| 1570 |
+ |
This may be a more convenient way to specify a spectral color, |
| 1571 |
+ |
especially one corresponding to a standard illuminant such as D65 |
| 1572 |
+ |
or a library of measured spectra. |
| 1573 |
+ |
|
| 1574 |
+ |
<pre> |
| 1575 |
+ |
mod specfile id |
| 1576 |
+ |
1 datafile |
| 1577 |
+ |
0 |
| 1578 |
+ |
0 |
| 1579 |
+ |
</pre> |
| 1580 |
+ |
|
| 1581 |
+ |
<p> |
| 1582 |
+ |
As with the spectrum type, rendering wavelengths outside the defined |
| 1583 |
+ |
range will be zero-filled. |
| 1584 |
+ |
Unlike the spectrum type, the file may contain non-uniform samples. |
| 1585 |
+ |
|
| 1586 |
+ |
<p> |
| 1587 |
+ |
|
| 1588 |
+ |
<dt> |
| 1589 |
+ |
<a NAME="Specfunc"> |
| 1590 |
+ |
<b>Specfunc</b> |
| 1591 |
+ |
</a> |
| 1592 |
+ |
|
| 1593 |
+ |
<dd> |
| 1594 |
+ |
The specfunc primitive offers dynamic control over a spectral |
| 1595 |
+ |
pattern, similar to the colorfunc type. |
| 1596 |
+ |
|
| 1597 |
+ |
<pre> |
| 1598 |
+ |
mod specfunc id |
| 1599 |
+ |
2+ sfunc funcfile transform |
| 1600 |
+ |
0 |
| 1601 |
+ |
2+ nmA nmB A3 .. |
| 1602 |
+ |
</pre> |
| 1603 |
+ |
|
| 1604 |
+ |
<p> |
| 1605 |
+ |
Like the spectrum primitive, the wavelength range is specified |
| 1606 |
+ |
in the first two real arguments, and additional real values are |
| 1607 |
+ |
set in the evaluation context. |
| 1608 |
+ |
This function is fed a wavelenth sample |
| 1609 |
+ |
between nmA and nmB as its only argument, |
| 1610 |
+ |
and it returns the corresponding spectral intensity. |
| 1611 |
+ |
|
| 1612 |
+ |
<dt> |
| 1613 |
+ |
<a NAME="Specdata"> |
| 1614 |
+ |
<b>Specdata</b> |
| 1615 |
+ |
</a> |
| 1616 |
+ |
|
| 1617 |
+ |
<dd> |
| 1618 |
+ |
Specdata is like brightdata and colordata, but with more |
| 1619 |
+ |
than 3 specular samples. |
| 1620 |
+ |
|
| 1621 |
+ |
<pre> |
| 1622 |
+ |
mod specdata id |
| 1623 |
+ |
3+n+ |
| 1624 |
+ |
func datafile |
| 1625 |
+ |
funcfile x1 x2 .. xn transform |
| 1626 |
+ |
0 |
| 1627 |
+ |
m A1 A2 .. Am |
| 1628 |
+ |
</pre> |
| 1629 |
+ |
|
| 1630 |
+ |
<p> |
| 1631 |
+ |
The data file must have one more dimension than the coordinate |
| 1632 |
+ |
variable count, as this final dimension corresponds to the covered |
| 1633 |
+ |
spectrum. |
| 1634 |
+ |
The starting and ending wavelengths are specified in "datafile" |
| 1635 |
+ |
as well as the number of spectral samples. |
| 1636 |
+ |
The function "func" will be called with two parameters, the |
| 1637 |
+ |
interpolated spectral value for the current coordinate and the |
| 1638 |
+ |
associated wavelength. |
| 1639 |
+ |
If the spectrum is broken into 12 components, then 12 calls |
| 1640 |
+ |
will be made to "func" for the relevant ray evaluation. |
| 1641 |
+ |
|
| 1642 |
+ |
<dt> |
| 1643 |
+ |
<a NAME="Specpict"> |
| 1644 |
+ |
<b>Specpict</b> |
| 1645 |
+ |
</a> |
| 1646 |
+ |
|
| 1647 |
+ |
<dd> |
| 1648 |
+ |
Specpict is a special case of specdata, where the pattern is |
| 1649 |
+ |
a hyperspectral image stored in the common-exponent file format. |
| 1650 |
+ |
The dimensions of the image data are determined by the picture |
| 1651 |
+ |
just as with the colorpict primitive. |
| 1652 |
+ |
|
| 1653 |
+ |
<pre> |
| 1654 |
+ |
mod specpict id |
| 1655 |
+ |
5+ |
| 1656 |
+ |
func specfile |
| 1657 |
+ |
funcfile u v transform |
| 1658 |
+ |
0 |
| 1659 |
+ |
m A1 A2 .. Am |
| 1660 |
+ |
</pre> |
| 1661 |
+ |
|
| 1662 |
+ |
<p> |
| 1663 |
+ |
The function "func" is called with the interpolated pixel value |
| 1664 |
+ |
and the wavelength sample in nanometers, the same as specdata, |
| 1665 |
+ |
with as many calls made as there are components in "specfile". |
| 1666 |
+ |
|
| 1667 |
|
</dl> |
| 1668 |
|
|
| 1669 |
|
<p> |
| 2012 |
|
directs the use of a scene description. |
| 2013 |
|
<ul> |
| 2014 |
|
<li> |
| 2015 |
< |
<a NAME="rvu" HREF="../man_html/rvu.1.html"><b>Rview</b></a> is ray-tracing program for viewing a scene interactively. |
| 2015 |
> |
<a NAME="rvu" HREF="../man_html/rvu.1.html"><b>Rvu</b></a> is ray-tracing program for viewing a scene interactively. |
| 2016 |
|
When the user specifies a new perspective, rvu quickly displays a rough image on the terminal, |
| 2017 |
|
then progressively increases the resolution as the user looks on. |
| 2018 |
|
He can select a particular section of the image to improve, or move to a different view and start over. |
| 2048 |
|
or converted a standard image format using one of the following |
| 2049 |
|
<b>translators</b>: |
| 2050 |
|
<ul> |
| 2051 |
< |
<li> <a HREF="../man_html/ra_bmp.1.html"><b>Ra_bmp</b> |
| 2051 |
> |
<li> <a HREF="../man_html/ra_bmp.1.html"><b>Ra_bmp</b></a> |
| 2052 |
|
converts to and from BMP image format. |
| 2053 |
|
<li> <a HREF="../man_html/ra_ppm.1.html"><b>Ra_ppm</b></a> |
| 2054 |
|
converts to and from Poskanzer Portable Pixmap formats. |
| 2077 |
|
<pre> |
| 2078 |
|
The Radiance Software License, Version 1.0 |
| 2079 |
|
|
| 2080 |
< |
Copyright (c) 1990 - 2014 The Regents of the University of California, |
| 2080 |
> |
Copyright (c) 1990 - 2021 The Regents of the University of California, |
| 2081 |
|
through Lawrence Berkeley National Laboratory. All rights reserved. |
| 2082 |
|
|
| 2083 |
|
Redistribution and use in source and binary forms, with or without |
| 2150 |
|
</h2> |
| 2151 |
|
<p> |
| 2152 |
|
<ul> |
| 2153 |
+ |
<li>Ward, Gregory J., Bruno Bueno, David Geisler-Moroder, |
| 2154 |
+ |
Lars O. Grobe, Jacob C. Jonsson, Eleanor |
| 2155 |
+ |
S. Lee, Taoning Wang, Helen Rose Wilson, |
| 2156 |
+ |
"<a href="https://doi.org/10.1016/j.enbuild.2022.111890">Daylight |
| 2157 |
+ |
Simulation Workflows Incorporating Measured Bidirectional |
| 2158 |
+ |
Scattering Distribution Functions</a>" |
| 2159 |
+ |
<em>Energy & Buildings</em>, Vol. 259, No. 11890, 2022. |
| 2160 |
+ |
<li>Wang, Taoning, Gregory Ward, Eleanor Lee, |
| 2161 |
+ |
"<a href="https://authors.elsevier.com/a/1XQ0a1M7zGwT7v">Efficient |
| 2162 |
+ |
modeling of optically-complex, non-coplanar exterior shading: |
| 2163 |
+ |
Validation of matrix algebraic methods</a>" |
| 2164 |
+ |
<em>Energy & Buildings</em>, vol. 174, pp. 464-83, Sept. 2018. |
| 2165 |
+ |
<li>Lee, Eleanor S., David Geisler-Moroder, Gregory Ward, |
| 2166 |
+ |
"<a href="https://eta.lbl.gov/sites/default/files/publications/solar_energy.pdf">Modeling |
| 2167 |
+ |
the direct sun component in buildings using matrix |
| 2168 |
+ |
algebraic approaches: Methods and |
| 2169 |
+ |
validation</a>," <em>Solar Energy</em>, |
| 2170 |
+ |
vol. 160, 15 January 2018, pp 380-395. |
| 2171 |
+ |
<li>Narain, Rahul, Rachel A. Albert, Abdullah Bulbul, |
| 2172 |
+ |
Gregory J. Ward, Marty Banks, James F. O'Brien, |
| 2173 |
+ |
"<a href="http://graphics.berkeley.edu/papers/Narain-OPI-2015-08/index.html">Optimal |
| 2174 |
+ |
Presentation of Imagery with Focus |
| 2175 |
+ |
Cues on Multi-Plane Displays</a>," |
| 2176 |
+ |
<em>SIGGRAPH 2015</em>. |
| 2177 |
+ |
<li>Ward, Greg, Murat Kurt, and Nicolas Bonneel, |
| 2178 |
+ |
"<a href="papers/WMAM14_Tensor_Tree_Representation.pdf">Reducing |
| 2179 |
+ |
Anisotropic BSDF Measurement to Common Practice</a>," |
| 2180 |
+ |
<em>Workshop on Material Appearance Modeling</em>, 2014. |
| 2181 |
+ |
<li>Banks, Martin, Abdullah Bulbul, Rachel Albert, Rahul Narain, |
| 2182 |
+ |
James F. O'Brien, Gregory Ward, |
| 2183 |
+ |
"<a href="http://graphics.berkeley.edu/papers/Banks-TPO-2014-05/index.html">The |
| 2184 |
+ |
Perception of Surface Material from Disparity and Focus Cues</a>," |
| 2185 |
+ |
<em>VSS 2014</em>. |
| 2186 |
|
<li>McNeil, A., C.J. Jonsson, D. Appelfeld, G. Ward, E.S. Lee, |
| 2187 |
|
"<a href="http://gaia.lbl.gov/btech/papers/4414.pdf"> |
| 2188 |
|
A validation of a ray-tracing tool used to generate |