| 1172 | 
  | 
parallel. | 
| 1173 | 
  | 
 | 
| 1174 | 
  | 
Fixed bug where mesh instances were not being freed, so subsequent calls | 
| 1175 | 
< | 
in programs like ranimate would refer to bogus data. | 
| 1175 | 
> | 
in programs like ranimove would refer to bogus data. | 
| 1176 | 
  | 
 | 
| 1177 | 
  | 
Added support in normtiff for floating-point and 16-bit/sample TIFF input | 
| 1178 | 
  | 
files. | 
| 1180 | 
  | 
Changed marksources() routine (src/rt/source.c) to check all | 
| 1181 | 
  | 
primitives in the modifier chain for emitting types, not only | 
| 1182 | 
  | 
the first.  This permits sources to be described with intervening | 
| 1183 | 
< | 
modifiers before the light/illum/glow primitive. | 
| 1183 | 
> | 
modifiers before the light/illum/glow primitive and allows aliases | 
| 1184 | 
> | 
as well. | 
| 1185 | 
  | 
 | 
| 1186 | 
  | 
Fixed bug in xform where it was neglecting to add transform arguments | 
| 1187 | 
  | 
to new mesh primitive. | 
| 1191 | 
  | 
 | 
| 1192 | 
  | 
Changed meta2tga to output correct colors. | 
| 1193 | 
  | 
 | 
| 1193 | 
– | 
****** COMPATIBILITY CHANGE ******** | 
| 1194 | 
  | 
Changed local coordinate index from 32-bits to 16-bits, which requires | 
| 1195 | 
< | 
that Radiance mesh files be recompiled. | 
| 1195 | 
> | 
that Radiance mesh files be recompiled.  (Later decided against this | 
| 1196 | 
> | 
change, as it caused problems with some models.) | 
| 1197 | 
  | 
 | 
| 1198 | 
  | 
Changed integer tone-mapping routines to better deal with images | 
| 1199 | 
  | 
containing large, constant regions. | 
| 1203 | 
  | 
 | 
| 1204 | 
  | 
Minor bug fix in ranimove where it was restarting processes when it | 
| 1205 | 
  | 
didn't need to. | 
| 1206 | 
+ | 
 | 
| 1207 | 
+ | 
Increased accuracy of default ambient parameters in rpict, rview, and | 
| 1208 | 
+ | 
rtrace.  In rad program, doubled -ar value, -ad value, and -as value, | 
| 1209 | 
+ | 
and decreased -aa value a bit.  Also adjusted -lr upwards and -lw | 
| 1210 | 
+ | 
downwards.  I should have done these things long ago, as processors | 
| 1211 | 
+ | 
have been getting faster and faster over the years. | 
| 1212 | 
+ | 
 | 
| 1213 | 
+ | 
Fixed bug discovered by Marcus Jacobs where oconv was dumping core | 
| 1214 | 
+ | 
when it was given too many modifiers. | 
| 1215 | 
+ | 
 | 
| 1216 | 
+ | 
Fixed problem with rpict where it was drawing illum sources badly | 
| 1217 | 
+ | 
even when they weren't all that small in the view. | 
| 1218 | 
+ | 
 | 
| 1219 | 
+ | 
Added in(i) function to rcalc for more flexible channel evaluation. | 
| 1220 | 
+ | 
 | 
| 1221 | 
+ | 
Replaced all calls to vfork() with regular fork() calls. | 
| 1222 | 
+ | 
 | 
| 1223 | 
+ | 
Fixed bug in glarendx for dgr calculation with sources behind view. | 
| 1224 | 
+ | 
 | 
| 1225 | 
+ | 
Added -p option to histo to print percentages/percentiles r.t. counts. | 
| 1226 | 
+ | 
 | 
| 1227 | 
+ | 
Added a source occluder cache to accelerate shadow testing.  This | 
| 1228 | 
+ | 
can save up to 50% of the calculation time in scenes with many | 
| 1229 | 
+ | 
light sources, especially ones containing large occluders.  This | 
| 1230 | 
+ | 
optimization may be tuned or switched off with the -DSHADCACHE=N | 
| 1231 | 
+ | 
compile switch, where N is the resolution of the shadow cache, or | 
| 1232 | 
+ | 
0 to disable it.  Since this is purely a time vs. memory trade-off, | 
| 1233 | 
+ | 
I decided not to make it a new command-line option.  (We already | 
| 1234 | 
+ | 
have plenty.) | 
| 1235 | 
+ | 
 | 
| 1236 | 
+ | 
****** COMPATIBILITY CHANGE ******** | 
| 1237 | 
+ | 
Changed the following command names to avoid conflicts: | 
| 1238 | 
+ | 
        rview -> rvu (with symbolic link back to rview) | 
| 1239 | 
+ | 
        calc -> icalc | 
| 1240 | 
+ | 
        lam -> rlam | 
| 1241 | 
+ | 
        gencat -> gencatenary | 
| 1242 | 
+ | 
 | 
| 1243 | 
+ | 
Improved -f option of normpat, which caused odd color changes before. | 
| 1244 | 
+ | 
 | 
| 1245 | 
+ | 
Created pgblur script which does fast Gaussian blur of image without changing | 
| 1246 | 
+ | 
its dimensions.  This is very useful in certain types of image processing | 
| 1247 | 
+ | 
calculations, such as finding or removing low frequencies. | 
| 1248 | 
+ | 
 | 
| 1249 | 
+ | 
****** COMPATIBILITY CHANGE ******** | 
| 1250 | 
+ | 
Changed little-used objpict script so that it takes scene files rather than | 
| 1251 | 
+ | 
rpict options on the command line, and puts everything into the right | 
| 1252 | 
+ | 
coordinate position automatically rather than requiring the user to do it. | 
| 1253 | 
+ | 
 | 
| 1254 | 
+ | 
Added -I option to replmarks for mesh instancing. | 
| 1255 | 
+ | 
 | 
| 1256 | 
+ | 
Made similar change for virtual sources to allow modifiers and aliases | 
| 1257 | 
+ | 
on the mirror and prism types to work properly. | 
| 1258 | 
+ | 
 | 
| 1259 | 
+ | 
Rob Guglielmetti added -lw and -lh options to falsecolor to control the | 
| 1260 | 
+ | 
legend dimensions.  Made it so -lw 0 and/or -lh 0 turns legend off. | 
| 1261 | 
+ | 
 | 
| 1262 | 
+ | 
Made it so pcompos will read everything from a stream even if it doesn't | 
| 1263 | 
+ | 
need it, so input commands will not receive a hangup signal. | 
| 1264 | 
+ | 
 | 
| 1265 | 
+ | 
Wrote ra_bmp program to convert to and from Windows BMP files (finally). | 
| 1266 | 
+ | 
It's the most horrible image format I've ever seen, and I've seen a lot. | 
| 1267 | 
+ | 
 | 
| 1268 | 
+ | 
Increased -aa default value for all renderers (and also -ad and -as in | 
| 1269 | 
+ | 
rview) at Schorsch's suggestion.  I think this undid my earlier decrease | 
| 1270 | 
+ | 
of -aa last time, which I guess was ill-considered. | 
| 1271 | 
+ | 
 | 
| 1272 | 
+ | 
Modified oconv to keep subdividing the octree if there are too many | 
| 1273 | 
+ | 
objects in a voxel even when the -r resolution limit has been | 
| 1274 | 
+ | 
reached.  This was not done before due to problems with recursion, | 
| 1275 | 
+ | 
and still, it will only continue to 256 times the original -r limit. | 
| 1276 | 
+ | 
If that isn't enough, then there's probably no hope, anyway. | 
| 1277 | 
+ | 
 | 
| 1278 | 
+ | 
Added -l option to obj2mesh to search for material files in library | 
| 1279 | 
+ | 
locations. | 
| 1280 | 
+ | 
 | 
| 1281 | 
+ | 
Increased polygon vertex limit to 512 in obj2mesh and obj2rad and added | 
| 1282 | 
+ | 
warning if this limit is exceeded. | 
| 1283 | 
+ | 
 | 
| 1284 | 
+ | 
Added tone-mapping and monitor primary options to ra_bmp.  This gives | 
| 1285 | 
+ | 
new functionality similar to normtiff and ximage.  It would be nice to | 
| 1286 | 
+ | 
add this feature to the other ra_* programs as well...  someday. | 
| 1287 | 
+ | 
 | 
| 1288 | 
+ | 
Fixed long-standing bug in reported pixel ordering out of certain | 
| 1289 | 
+ | 
protate commands. | 
| 1290 | 
+ | 
 | 
| 1291 | 
+ | 
Added -p option to rcalc for "passive mode" that transmits | 
| 1292 | 
+ | 
unrecognized input -- useful for substituting data in the | 
| 1293 | 
+ | 
middle of a stream. | 
| 1294 | 
+ | 
 | 
| 1295 | 
+ | 
Fixed a very obscure bug in rpict that caused a dark horizontal | 
| 1296 | 
+ | 
line in certain cylindrical projections due to improper drawing | 
| 1297 | 
+ | 
of the sky dome source in rt/srcdraw.c. | 
| 1298 | 
+ | 
 | 
| 1299 | 
+ | 
Fixed problems with effective ray lengths computed for dielectric | 
| 1300 | 
+ | 
and BRTDfunc materials.  This was most evident in breakup of holodeck | 
| 1301 | 
+ | 
views when VDISTANCE=True. | 
| 1302 | 
+ | 
 | 
| 1303 | 
+ | 
Fixed rad so that 'scene' variable may consist only of inline commands. | 
| 1304 | 
+ | 
 | 
| 1305 | 
+ | 
Fixed bug introduced in shadow caching routines where sources in the | 
| 1306 | 
+ | 
middle of spheres were not illuminating properly.  Thanks to Guilio | 
| 1307 | 
+ | 
Antonutto for spotting this problem. | 
| 1308 | 
+ | 
 | 
| 1309 | 
+ | 
Modified gensky behavior so if time is given with standard time zone | 
| 1310 | 
+ | 
designation, any -m option is ignored. | 
| 1311 | 
+ | 
 | 
| 1312 | 
+ | 
Added -n option to mkillum for (shared memory) parallel processing. | 
| 1313 | 
+ | 
 | 
| 1314 | 
+ | 
Fixed a long-standing bug in parallel processing code that only | 
| 1315 | 
+ | 
seemed to manifest with the new mkillum -n option, where rtrace | 
| 1316 | 
+ | 
would deadlock upon termination.  The reason it never showed up | 
| 1317 | 
+ | 
before is because I always closed processes in the reverse order | 
| 1318 | 
+ | 
of opening them in other programs.  I went through and found similar | 
| 1319 | 
+ | 
(potential) bugs in the rview device subprocess code and util/netproc.c. | 
| 1320 | 
+ | 
 | 
| 1321 | 
+ | 
Corrected the normalization of the Gaussian reflectance model.  This will | 
| 1322 | 
+ | 
cause an increase in specularity for low-lying light sources. | 
| 1323 | 
+ | 
Thanks to Don Walters of Boeing and Arne Duer of the Univ. of Innsbruck | 
| 1324 | 
+ | 
for pointing out this error.  The square root used for the two cosines | 
| 1325 | 
+ | 
in the denominator of the normalization factor should not be present. | 
| 1326 | 
+ | 
This was a serious mistake I made in the original model, which went | 
| 1327 | 
+ | 
undiscovered (at least to my knowledge) for over a decade.  I think | 
| 1328 | 
+ | 
Bruce Walter of Cornell may have known about it, but I never heard | 
| 1329 | 
+ | 
the details of his discovery. | 
| 1330 | 
+ | 
 | 
| 1331 | 
+ | 
Enabled the -p option for primary conversion without tone-mapping | 
| 1332 | 
+ | 
in ra_bmp.  Also provides for XYZE input conversion to RGB. | 
| 1333 | 
+ | 
 | 
| 1334 | 
+ | 
Fixed what I consider a bug in pvalue -o when taking XYZE files on input, | 
| 1335 | 
+ | 
where it was inappropriately undoing the exposure value so that it always | 
| 1336 | 
+ | 
reported radiance rather than XYZ values with Y in cd/m^2. | 
| 1337 | 
+ | 
 | 
| 1338 | 
+ | 
Made it so ra_bmp only produces run-length encoded 8-bit output for | 
| 1339 | 
+ | 
grayscale images that are tone-mapped.  This minimizes circumstances | 
| 1340 | 
+ | 
under which output scanline order is reversed. | 
| 1341 | 
+ | 
 | 
| 1342 | 
+ | 
Fixed bug in rcalc where it sometimes wasn't parsing the input format | 
| 1343 | 
+ | 
correctly. | 
| 1344 | 
+ | 
 | 
| 1345 | 
+ | 
===================== | 
| 1346 | 
+ | 
Version 3.7 | 
| 1347 | 
+ | 
 | 
| 1348 | 
+ | 
Fixed bug in source occluder cache which caused consistency error | 
| 1349 | 
+ | 
for distant sources and mist materials.  (Thanks to Mark Stock for | 
| 1350 | 
+ | 
finding the problem.) | 
| 1351 | 
+ | 
 | 
| 1352 | 
+ | 
Fixed serious bug in source drawing routines for rpict, where the edges | 
| 1353 | 
+ | 
of light sources were appearing through obstructions.  (Thanks to Veronica | 
| 1354 | 
+ | 
Sundstedt for pointing this out.) | 
| 1355 | 
+ | 
 | 
| 1356 | 
+ | 
(The above were included in the 3.6.1 patch release.) | 
| 1357 | 
+ | 
 | 
| 1358 | 
+ | 
Changed default temporary directory from /usr/tmp, which doesn't exist | 
| 1359 | 
+ | 
on a lot of systems these days, to /tmp. | 
| 1360 | 
+ | 
 | 
| 1361 | 
+ | 
Eliminated many unused files and programs from the distribution, including | 
| 1362 | 
+ | 
the following programs that were being built but no longer used: | 
| 1363 | 
+ | 
        oki20   - printer driver for OkiMate 20 printer (B&W) | 
| 1364 | 
+ | 
        oki20c  - printer driver for OkiMate 20 color printer | 
| 1365 | 
+ | 
        pcwarp  - intended as more general substitute for macbetcal, | 
| 1366 | 
+ | 
                        but never quite worked | 
| 1367 | 
+ | 
        ra_avs  - convert to & from AVS image format | 
| 1368 | 
+ | 
        ra_bn   - convert to & from Barneyscann format | 
| 1369 | 
+ | 
        ra_pr   - convert to & from 8-bit Sun rasterfile format | 
| 1370 | 
+ | 
        ra_pr24 - convert to & from 24-bit Sun rasterfile format | 
| 1371 | 
+ | 
        thf2rad - convert GDS "things file" to Radiance scene format | 
| 1372 | 
+ | 
If anyone is still wanting any of the above programs, let us know and we'll | 
| 1373 | 
+ | 
reinstate it. | 
| 1374 | 
+ | 
 | 
| 1375 | 
+ | 
Fixed bug in pcond's acuity simulation for small view angles (less than | 
| 1376 | 
+ | 
4 degrees horizontally or vertically).  Thanks to James Lee for figuring | 
| 1377 | 
+ | 
this out. | 
| 1378 | 
+ | 
 | 
| 1379 | 
+ | 
Added script to convert to/from ICT's Poskanzer Float Map, which I don't | 
| 1380 | 
+ | 
care to support officially due to its machine-dependent byte order. | 
| 1381 | 
+ | 
 | 
| 1382 | 
+ | 
Fixed bug that caused incorrect reporting of non-surface in set when | 
| 1383 | 
+ | 
mixing meshes and instances.  (Thanks to Jack de Valpine for discovery.) | 
| 1384 | 
+ | 
 | 
| 1385 | 
+ | 
Fixed innacuracy in calculation of diffuse transmission in the presence | 
| 1386 | 
+ | 
of pure specular (Fresnel reflection) using "trans" material.  Thanks | 
| 1387 | 
+ | 
to Christoph Reinhart for pointing out the error. | 
| 1388 | 
+ | 
 | 
| 1389 | 
+ | 
Made internal change to tone-mapping library to use structure pointer | 
| 1390 | 
+ | 
rather than stack, making code re-entrant and more up to modern standards. | 
| 1391 | 
+ | 
 | 
| 1392 | 
+ | 
Added -pd option to handle depth-of-field blur in rpict.  This requires | 
| 1393 | 
+ | 
that the view directon (-vd option) include focal distance information, | 
| 1394 | 
+ | 
which is now preserved by the various view file routines, and reported | 
| 1395 | 
+ | 
by the vwright command. | 
| 1396 | 
+ | 
 | 
| 1397 | 
+ | 
Added DBLUR variable to ranimate and pmdblur script to handle simultaneous | 
| 1398 | 
+ | 
motion and depth-of-field blurring.  Thanks to Visarc for funding this work. | 
| 1399 | 
+ | 
 | 
| 1400 | 
+ | 
Added setting of focus distance in rvu ("focus" command) and rholo | 
| 1401 | 
+ | 
('f'/"frame" command). | 
| 1402 | 
+ | 
 | 
| 1403 | 
+ | 
Changed default remote shell in ranimate to "ssh" rather than "rsh", | 
| 1404 | 
+ | 
which has been abandoned on most Unix systems due to security issues. | 
| 1405 | 
+ | 
 | 
| 1406 | 
+ | 
Fixed behavior of source primitive using illum with no alternate | 
| 1407 | 
+ | 
material.  These now become transparent so one can see the sky or | 
| 1408 | 
+ | 
light-probe background for use in image-based lighting.  Previously, | 
| 1409 | 
+ | 
the user needed to specify the background glow as the alternate | 
| 1410 | 
+ | 
material for a distant illum source to behave properly.  (This still | 
| 1411 | 
+ | 
works.) | 
| 1412 | 
+ | 
 | 
| 1413 | 
+ | 
Fixed some minor problems and inconsistencies with 16-bit/channel | 
| 1414 | 
+ | 
TIFF i/o in ra_tiff. | 
| 1415 | 
+ | 
 | 
| 1416 | 
+ | 
Created mksource program to generate distant sources for improved | 
| 1417 | 
+ | 
image-based lighting with light probes. | 
| 1418 | 
+ | 
 | 
| 1419 | 
+ | 
Changed ambient calculation so that -ad will not limit recursion | 
| 1420 | 
+ | 
depth, and a minimum of 27 samples will be sent out for each stored | 
| 1421 | 
+ | 
ambient value, or 3 samples if -aa is 0 (caching off). | 
| 1422 | 
+ | 
 | 
| 1423 | 
+ | 
Added -oM option to rtrace to report material (rather than modifier) | 
| 1424 | 
+ | 
for cases where actual material is aliased or further up modifier chain. | 
| 1425 | 
+ | 
 | 
| 1426 | 
+ | 
Rearranged the way ray contributions are computed so that it might be | 
| 1427 | 
+ | 
possible to use rtrace to derive daylight coefficients and optical | 
| 1428 | 
+ | 
transfer functions.  The new -oTW option of rtrace produces color | 
| 1429 | 
+ | 
contribution weights for each ray, which combined with the -ti (or -tI) | 
| 1430 | 
+ | 
option permits the contribution of selected surfaces or sources to | 
| 1431 | 
+ | 
be determined.  Using the -oTW option, one should also specify | 
| 1432 | 
+ | 
options "-dt 0 -aa 0 -as 0" for optimal results.  In particular, | 
| 1433 | 
+ | 
one cannot expect reasonable tallies with -ab >= 1 and irradiance | 
| 1434 | 
+ | 
caching on (-aa > 0). | 
| 1435 | 
+ | 
 | 
| 1436 | 
+ | 
The same code modifications included a change to the indirect computation | 
| 1437 | 
+ | 
with caching switched off (-aa 0).  Whereas before, the number of secondary | 
| 1438 | 
+ | 
rays after the first bounce were half of the previous generation, they are | 
| 1439 | 
+ | 
now determined by the surface reflectance, making for a better and faster | 
| 1440 | 
+ | 
calculation.  It should now be possible to compute many bounces with -aa 0, | 
| 1441 | 
+ | 
which used to be prohibitively expensive. | 
| 1442 | 
+ | 
 | 
| 1443 | 
+ | 
Added -T option to xshowtrace to trace rays to light sources. | 
| 1444 | 
+ | 
 | 
| 1445 | 
+ | 
Added meta2bmp program to produce BMP files from metafile graphics. | 
| 1446 | 
+ | 
 | 
| 1447 | 
+ | 
Added cct_x(t) and cct_y(t) to src/cal/cal/blackbody.cal to interpolate | 
| 1448 | 
+ | 
CIE chromaticities for particular black-body temperatures. | 
| 1449 | 
+ | 
 | 
| 1450 | 
+ | 
Increased maximum number of input pictures in pcomb and pcompos to 512. | 
| 1451 | 
+ | 
 | 
| 1452 | 
+ | 
Created rtcontrib program for computing ray contribution coefficients. | 
| 1453 | 
+ | 
This tool may be used to do standard optical ray tracing or daylight | 
| 1454 | 
+ | 
coefficient calculations for annual simulations, among other uses. | 
| 1455 | 
+ | 
 | 
| 1456 | 
+ | 
Added tilde ('~') output option as part of the -o* specification of | 
| 1457 | 
+ | 
rtrace.  This permits ray trees to be parsed more easily in binary | 
| 1458 | 
+ | 
output mode, as needed by rtcontrib. | 
| 1459 | 
+ | 
 | 
| 1460 | 
+ | 
Implemented Russian roulette ray termination with -lr <= 0. | 
| 1461 | 
+ | 
Made -lr -10 the default in rtcontrib. | 
| 1462 | 
+ | 
 | 
| 1463 | 
+ | 
Made rtcontrib -f option search RAYPATH directories. | 
| 1464 | 
+ | 
 | 
| 1465 | 
+ | 
Made it so -o option of rtcontrib can pipe -o output to a command. | 
| 1466 | 
+ | 
 | 
| 1467 | 
+ | 
Added -if and -of options to total for binary i/o (following rcalc mold). | 
| 1468 | 
+ | 
 | 
| 1469 | 
+ | 
Switched default options in rtrace to use Russian roulette.  (Rpict and rvu | 
| 1470 | 
+ | 
still use biased ray termination.) |