--- ray/doc/ray.html 2003/03/15 17:58:16 1.1 +++ ray/doc/ray.html 2020/09/03 15:46:32 1.29 @@ -1,22 +1,21 @@ +
-Building Technologies Department
+Building Technologies Program
Lawrence Berkeley National Laboratory
1 Cyclotron Rd., 90-3111
Berkeley, CA 94720
@@ -566,7 +565,7 @@ A material defines the way light interacts with a sur
@@ -661,7 +660,7 @@ a perfectly scattering medium (no absorption). The scattering eccentricity parameter will likewise override the global setting if it is present. Scattering eccentricity indicates how much scattered light favors the -forward direction, as fit by the Heyney-Greenstein function: +forward direction, as fit by the Henyey-Greenstein function:P(theta) = (1 - g*g) / (1 + g*g - 2*g*cos(theta))^1.5 @@ -799,7 +798,8 @@ unless the line integrals consider enclosed geometry.
mod trans2 id @@ -811,6 +811,27 @@ unless the line integrals consider enclosed geometry.
+ mod ashik2 id + 4+ ux uy uz funcfile transform + 0 + 8 dred dgrn dblu sred sgrn sblu u-power v-power ++ +
+ +
+ mod BSDF id + 6+ thick BSDFfile ux uy uz funcfile transform + 0 + 0|3|6|9 + rfdif gfdif bfdif + rbdif gbdif bbdif + rtdif gtdif btdif ++ +
+ The first string argument is a "thickness" parameter that may be used + to hide detail geometry being proxied by an aggregate BSDF material. + If a view or shadow ray hits a BSDF proxy with non-zero thickness, + it will pass directly through as if the surface were not there. + Similar to the illum type, this permits direct viewing and + shadow testing of complex geometry. + The BSDF is used when a scattered (indirect) ray hits the surface, + and any transmitted sample rays will be offset by the thickness amount + to avoid the hidden geometry and gather samples from the other side. + In this manner, BSDF surfaces can improve the results for indirect + scattering from complex systems without sacrificing appearance or + shadow accuracy. + If the BSDF has transmission and back-side reflection data, + a parallel BSDF surface may be + placed slightly less than the given thickness away from the front surface + to enclose the complex geometry on both sides. + The sign of the thickness is important, as it indicates + whether the proxied geometry is behind the BSDF + surface (when thickness is positive) or in front (when + thickness is negative). +
+ The second string argument is the name of the BSDF file, + which is found in the usual auxiliary locations. The + following three string parameters name variables for an + "up" vector, which together with the surface + normal, define the local coordinate system that orients the + BSDF. These variables, along with the thickness, are defined + in a function file given as the next string argument. An + optional transform is used to scale the thickness and + reorient the up vector. +
+ If no real arguments are given, the BSDF is used by itself + to determine reflection and transmission. If there are at + least 3 real arguments, the first triplet is an additional + diffuse reflectance for the front side. At least 6 real + arguments adds diffuse reflectance to the rear side of the + surface. If there are 9 real arguments, the final triplet + will be taken as an additional diffuse transmittance. All + diffuse components as well as the non-diffuse transmission + are modified by patterns applied to this material. The + non-diffuse reflection from either side are unaffected. + Textures perturb the effective surface normal in the usual + way. +
+ The surface normal of this type is not altered to face the + incoming ray, so the front and back BSDF reflections may + differ. (Transmission is identical front-to-back by physical + law.) If back visibility is turned off during rendering and + there is no transmission or back-side reflection, only then + the surface will be invisible from behind. Unlike other + data-driven material types, the BSDF type is fully supported + and all parts of the distribution are properly sampled. +
+ +
+ mod aBSDF id + 5+ BSDFfile ux uy uz funcfile transform + 0 + 0|3|6|9 + rfdif gfdif bfdif + rbdif gbdif bbdif + rtdif gtdif btdif ++ +
+ If a material has no specular transmitted component, it is + much better to use the BSDF type with a zero thickness + than to use aBSDF. +
+ +
@@ -1367,8 +1499,6 @@ A mixfunc mixes two modifiers procedurally. It i which serves as a form of opacity control when used with a material.) Vname is the coefficient defined in funcfile that determines the influence of foreground. The background coefficient is always (1-vname). - Since the references are not resolved until run-time, the last definitions of the modifier id's will be used. - This can result in modifier loops, which are detected by the renderer.
@@ -1412,7 +1542,6 @@ A mixfunc mixes two modifiers procedurally. It i arguments, the red, green and blue values corresponding to the pixel at (u,v). -
@@ -1680,8 +1807,8 @@ The details of this process are not important, but directs the use of a scene description.
The Radiance Software License, Version 1.0 -Copyright (c) 1990 - 2002 The Regents of the University of California, +Copyright (c) 1990 - 2014 The Regents of the University of California, through Lawrence Berkeley National Laboratory. All rights reserved. Redistribution and use in source and binary forms, with or without @@ -1785,7 +1906,7 @@ are met: nor may "Radiance" appear in their name, without prior written permission of Lawrence Berkeley National Laboratory. -THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED +THIS SOFTWARE IS PROVIDED ``AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL Lawrence Berkeley National Laboratory OR @@ -1824,67 +1945,112 @@ Ecole Polytechnique Federale de Lausanne (EPFL Unive