| 1 |  | <html> | 
| 2 |  | <head> | 
| 3 |  | <title> | 
| 4 | < | The RADIANCE 4.0 Synthetic Imaging System | 
| 4 | > | The RADIANCE 4.1 Synthetic Imaging System | 
| 5 |  | </title> | 
| 6 |  | </head> | 
| 7 |  | <body> | 
| 9 |  | <p> | 
| 10 |  |  | 
| 11 |  | <h1> | 
| 12 | < | The RADIANCE 4.0 Synthetic Imaging System | 
| 12 | > | The RADIANCE 4.1 Synthetic Imaging System | 
| 13 |  | </h1> | 
| 14 |  |  | 
| 15 |  | <p> | 
| 1053 |  | <p> | 
| 1054 |  |  | 
| 1055 |  | <dt> | 
| 1056 | + | <a NAME="BSDF"> | 
| 1057 | + | <b>BSDF</b> | 
| 1058 | + | </a> | 
| 1059 | + |  | 
| 1060 | + | <dd> | 
| 1061 | + | The BSDF material type loads an XML (eXtensible Markup Language) | 
| 1062 | + | file describing a bidirectional scattering distribution function. | 
| 1063 | + | Real arguments to this material may define additional | 
| 1064 | + | diffuse components that augment the BSDF data. | 
| 1065 | + | String arguments are used to define thickness for proxied | 
| 1066 | + | surfaces and the "up" orientation for the material. | 
| 1067 | + |  | 
| 1068 | + | <pre> | 
| 1069 | + | mod BSDF id | 
| 1070 | + | 6+ thick BSDFfile ux uy uz funcfile transform | 
| 1071 | + | 0 | 
| 1072 | + | 0|3|6|9 | 
| 1073 | + | rfdif gfdif bfdif | 
| 1074 | + | rbdif gbdif bbdif | 
| 1075 | + | rtdif gtdif btdif | 
| 1076 | + | </pre> | 
| 1077 | + |  | 
| 1078 | + | <p> | 
| 1079 | + | The first string argument is a "thickness" parameter that may be used | 
| 1080 | + | to hide detail geometry being proxied by an aggregate BSDF material. | 
| 1081 | + | If a view or shadow ray hits a BSDF proxy with non-zero thickness, | 
| 1082 | + | it will pass directly through as if the surface were not there. | 
| 1083 | + | Similar to the illum type, this permits direct viewing and | 
| 1084 | + | shadow testing of complex geometry. | 
| 1085 | + | The BSDF is used when a scattered (indirect) ray hits the surface, | 
| 1086 | + | and any transmitted sample rays will be offset by the thickness amount | 
| 1087 | + | to avoid the hidden geometry and gather samples from the other side. | 
| 1088 | + | In this manner, BSDF surfaces can improve the results for indirect | 
| 1089 | + | scattering from complex systems without sacrificing appearance or | 
| 1090 | + | shadow accuracy. | 
| 1091 | + | If the BSDF has transmission and back-side reflection data, | 
| 1092 | + | a parallel BSDF surface may be | 
| 1093 | + | placed slightly less than the given thickness away from the front surface | 
| 1094 | + | to enclose the complex geometry on both sides. | 
| 1095 | + | The sign of the thickness is important, as it indicates | 
| 1096 | + | whether the proxied geometry is behind the BSDF | 
| 1097 | + | surface (when thickness is positive) or in front (when | 
| 1098 | + | thickness is negative). | 
| 1099 | + | <p> | 
| 1100 | + | The second string argument is the name of the BSDF file, | 
| 1101 | + | which is found in the usual auxiliary locations.  The | 
| 1102 | + | following three string parameters name variables for an | 
| 1103 | + | "up" vector, which together with the surface | 
| 1104 | + | normal, define the local coordinate system that orients the | 
| 1105 | + | BSDF.  These variables, along with the thickness, are defined | 
| 1106 | + | in a function file given as the next string argument.  An | 
| 1107 | + | optional transform is used to scale the thickness and | 
| 1108 | + | reorient the up vector. | 
| 1109 | + | <p> | 
| 1110 | + | If no real arguments are given, the BSDF is used by itself | 
| 1111 | + | to determine reflection and transmission.  If there are at | 
| 1112 | + | least 3 real arguments, the first triplet is an additional | 
| 1113 | + | diffuse reflectance for the front side.  At least 6 real | 
| 1114 | + | arguments adds diffuse reflectance to the rear side of the | 
| 1115 | + | surface.  If there are 9 real arguments, the final triplet | 
| 1116 | + | will be taken as an additional diffuse transmittance.  All | 
| 1117 | + | diffuse components as well as the non-diffuse transmission | 
| 1118 | + | are modified by patterns applied to this material.  The | 
| 1119 | + | non-diffuse reflection from either side are unaffected. | 
| 1120 | + | Textures perturb the effective surface normal in the usual | 
| 1121 | + | way. | 
| 1122 | + | <p> | 
| 1123 | + | The surface normal of this type is not altered to face the | 
| 1124 | + | incoming ray, so the front and back BSDF reflections may | 
| 1125 | + | differ.  (Transmission is identical front-to-back by physical | 
| 1126 | + | law.) If back visibility is turned off during rendering and | 
| 1127 | + | there is no transmission or back-side reflection, only then | 
| 1128 | + | the surface will be invisible from behind.  Unlike other | 
| 1129 | + | data-driven material types, the BSDF type is fully supported | 
| 1130 | + | and all parts of the distribution are properly sampled. | 
| 1131 | + | <p> | 
| 1132 | + |  | 
| 1133 | + | <dt> | 
| 1134 |  | <a NAME="Antimatter"> | 
| 1135 |  | <b>Antimatter</b> | 
| 1136 |  | </a> | 
| 1999 |  | <a HREF="#Plasdata">Plasdata</a> | 
| 2000 |  | <a HREF="#Metdata">Metdata</a> | 
| 2001 |  | <a HREF="#Transdata">Transdata</a> | 
| 2002 | + | <a HREF="#BSDF">BSDF</a> | 
| 2003 |  | <a HREF="#Antimatter">Antimatter</a> | 
| 2004 |  |  | 
| 2005 |  | </pre> |