home *** CD-ROM | disk | FTP | other *** search
/ Stars of Shareware: Raytrace & Morphing / SOS-RAYTRACE.ISO / programm / raytrace / radiance / doc / radiance.v14 < prev    next >
Encoding:
Text File  |  1993-09-03  |  31.9 KB  |  861 lines

  1. ~s Radiance Digest, v1n4
  2. Dear Radiance User,
  3.  
  4. Here is another culling of mail regarding Radiance.  There are many new
  5. users since the last mailing, and if you are one of them I would like to
  6. send you my welcome.  Also, if you would like back issues of this digest,
  7. just send me some mail.  (No one has asked for any yet -- should this be
  8. telling me something?)  Topics included in this digest are the following:
  9.  
  10.     GEOM    Geometric Primitives in Radiance
  11.     ATMOS    Simulating Atmospheric Effects
  12.     LARGE    Large Radiance Models
  13.     PORT    Portability Issues (on the long side)
  14.     PINTERP    Uses for the Pinterp Program
  15.  
  16. =====================================================
  17. GEOM    Geometric Primitives in Radiance
  18.  
  19. Date: Sat, 8 Jun 91 17:24:43 NZT
  20. From: pdbourke%ccu1.aukuni.ac.nz@Csa2.lbl.gov
  21. Subject: Polygon primitive
  22. To: GJWard@Csa2.lbl.gov
  23.  
  24. Regarding my raving earlier about the ordering of polygons for the direction
  25. of facet normal...how about a special polygon primitive which is defined
  26. as double sided, it is really two polygons with the same vertices but one
  27. ordered clockwise and the other anticlockwise. It seems better to make this
  28. a primitive that the renderer "knows" about than to have the data files
  29. include both polygons. Does Radiance handle coincident polygons like that
  30. descibed above?
  31. Also I am fustrated by renderers which don't know about lines and therefore
  32. force me to turn lines into cylinders. It would seem nicer for the renderer
  33. to turn them into cylinders of radius = 1 pixel, ie: normally the modelling
  34. or translator software does not know the pixel size (image space not world) 
  35.  
  36.     Paul D Bourke
  37.  
  38. Date: Mon, 10 Jun 91 08:57:54 +0200
  39. From: greg (Greg Ward)
  40. To: pdbourke%ccu1.aukuni.ac.nz@Csa2.lbl.gov
  41. Subject: Re:  Polygon primitive
  42.  
  43. Hi Paul,
  44.  
  45. As I said in an earlier mail, Radiance ignores polygon "sidedness" for all
  46. material types except dielectric.  Thus, most polygons in fact act as though
  47. they are two-sided during rendering.  Dielectric objects must be modeled as
  48. solids, since light refraction happens on entry and on exit, and a two-sided
  49. polygon would be equivalent to an infinitely thin volume, which should be
  50. modeled instead by the material "glass" that is designed for this purpose
  51. and that ignores surface orientation.
  52.  
  53. The hack used by most scanline renderers of culling back-facing polygons
  54. does not really help that much in a ray tracer so I felt that all faces
  55. should be treated as two-sided in Radiance.  This makes the modelers job
  56. a lot easier (whether it be a modeler programmer like youself or some poor
  57. fool like me using a text editor).
  58.  
  59. To answer your question, "does Radiance handle coincident surfaces?" I would
  60. have to say no.  There is a well-known problem in ray tracing which is 
  61. avoiding a reintersection with a surface upon reflection or refraction.
  62. For polygons, it is an easy decision not to test the intersected surface
  63. again for intersection, but spheres and other curved surfaces can have
  64. multiple intersection and the decision is not so straightforward.  The
  65. nicest way to avoid this problem is to insist that the first intersection
  66. be some minimum distance from the starting point, which precludes the
  67. possibility of properly handling coincident surfaces as well.  I could
  68. discuss this topic in more detail, but I see my letter running off the
  69. top of the screen and sense that I should move on.
  70.  
  71. Drawing lines does not make sense for a physically-based rendering program
  72. because lines in fact do not exist.  I suppose true two-dimensional surfaces
  73. don't exist either, but for the purpose of light interaction they are a
  74. fair approximation of the real world.  Physics aside, it is not easy in
  75. a ray-tracer to decide which pixels to paint with a line because the
  76. rays go into the scene from the pixels and may not even be aware when
  77. they pass close to a line.  Line drawing works much better the other
  78. way where you start with the world coordinates of the line and draw
  79. a nice pixel-width object on the image.  Believe it or not, Radiance
  80. sometimes does not even know what the pixel size is because it is
  81. frequently used in a luminance mode where it is not generating an image
  82. but is being used instead to calculate light levels.  Also, since lines
  83. are non-physical, it would not be possible to shade them properly and
  84. they would wind up as these anomolous glowing objects in an otherwise
  85. natural-looking scene.
  86.  
  87. For the purpose of rendering with a ray-tracer, it really makes the
  88. most sense to convert the lines into cylinders as you do and
  89. give them a radius that makes the most sense of the size of the
  90. object the lines are meant to represent, ie. grass or sticks or
  91. whatever.  The lines may show up as thicker up close and thinner
  92. (or dissappearing) at a distance, but this is the nature of physical
  93. reality.  Setting the line width proplerly usually means leaving it
  94. to the user.
  95.  
  96. -Greg
  97.  
  98. Date: Thu, 1 Aug 91 8:43:19 NZT
  99. From: pdbourke%ccu1.aukuni.ac.nz@Csa2.lbl.gov
  100. Subject: A few questions
  101. To: GJWard@Csa2.lbl.gov
  102.  
  103. I have been using radiance a bit now although generally in a simple minded
  104. way, I do have a question on which you may have some suggestions.
  105.  
  106. What is the "nicest way" to include parameters in a scene description. For 
  107. example, define some constants which are used thoughout the scene description.
  108. This would allow the user to change the constants to meet his/her needs.
  109. A real example, I would like to define a constant called RADIUS say, this
  110. would be used thoughout the geometry description of cylinders and spheres.
  111.  
  112.     Paul D Bourke
  113.  
  114. From greg Fri Aug  2 08:38:51 1991
  115. Date: Fri, 2 Aug 91 08:38:50 +0200
  116. From: greg (Greg Ward)
  117. To: pdbourke%ccu1.aukuni.ac.nz@Csa2.lbl.gov
  118. Subject: Re:  A few questions
  119.  
  120. Hi Paul,
  121.  
  122. I have considered from time to time adding variables to the scene description
  123. but never did it.  I guess I wanted to keep the job of parsing the scene
  124. files as simple as possible for other programs/programmers who might want
  125. to use the information.
  126.  
  127. The first method that occurs to me for adding variables to the input file is
  128. with the C language preprocessor, /usr/lib/cpp, or better yet the macro
  129. processor m4.  This will allow you to define variables as well as (macro)
  130. functions with arguments.  I have not tried this myself, but I see no reason
  131. why it wouldn't work.
  132.  
  133. -Greg
  134.  
  135. Date: Sat, 3 Aug 91 14:31:53 NZT
  136. From: pdbourke%ccu1.aukuni.ac.nz@Lbl.Bitnet
  137. Subject: Radiance (of course)
  138. To: greg%lesosun1.epfl.ch@Lbl.Bitnet
  139.  
  140. Thanks for the reply, I didn't think that parameters were possible in the
  141. Radiance scene description but thought I would check in case there were
  142. some as yet undocumented features.
  143.  
  144. You may have noticed a new version of Vision3D in the Mac FTP folder. If not
  145. then you may want to change the file privileges.
  146.  
  147. Has anyone else to your knowledge written a translator from Super3D (another
  148. Mac modeller, not all that powerful but widely used, it is to 3d modelling
  149. what Lotus is to speadsheets - the product to which others are compared). I
  150. have worked on one over the last week for a project here, before I develop
  151. it much further I would like to make sure there is not already something
  152. out there.
  153.  
  154. I'll send you a GIF sometime soon of some 3D L-System plants I've been
  155. working on recently. They look quite good I think, the application that
  156. allows the user to specify the production rules, etc, exports to Radiance.
  157.  
  158.     Paul D Bourke
  159.  
  160. Date: Mon, 5 Aug 91 10:00:04 +0200
  161. From: greg (Greg Ward)
  162. To: pdbourke%ccu1.aukuni.ac.nz@Lbl.Bitnet
  163. Subject: Re:  Radiance (of course)
  164.  
  165. Hi Paul,
  166.  
  167. Thanks for the new version of Vision3D.  I did noticed it and renamed
  168. the files, getting rid of the old one and updating the README file.
  169. I have since made the README file in that directory writable so you
  170. can modify it if you like.
  171.  
  172. I have had a student working (for some time) on translating the Renderman
  173. output of Sculp3D into Radiance format, but I don't know off hand of anyone
  174. who has worked with Super3D files.
  175.  
  176. You can drop GIF (Targa, PICT, Sun rasterfile, Radiance pictures) off
  177. in the pub/xfer directory on hobbes with anonymous ftp.  Which reminds
  178. me, I need to write some new image format translators...  My prediction
  179. for computer science is that in two years the hardware industry will
  180. abandon the ASCII standard and the QWERTY keyboard and the few bitter
  181. programmers left will spend all their time hacking on new viruses.
  182.  
  183. -Greg
  184.  
  185. ========================================================
  186. ATMOS    Simulating Atmospheric Effects
  187.  
  188. To: greg@hobbes.lbl.gov
  189. Subject: Atmospheric effects
  190. From: Jerrell Ballard  <ballard@mc1.wes.army.mil>
  191. Date: Thu, 13 Jun 91 11:31:34 EDT
  192.  
  193.   Hello Greg,
  194.  
  195.   Are you aware of any RADIANCE functions that *roughly* approximate
  196.   atmospheric effects ?  I have been generating some landscape scenes,
  197.   and then post-processing to add the atmospheric effects.  It would
  198.   handy to be able to add atmospherics at time of rendering. 
  199.  
  200.   Jerrell Ballard
  201.   Geographical Information Systems Team
  202.   Waterways Experiment Station
  203.   United States Army Corp Engineers
  204.  
  205. From greg Fri Jun 14 08:56:22 1991
  206. Date: Fri, 14 Jun 91 08:56:18 +0200
  207. From: greg (Greg Ward)
  208. Message-Id: <9106140656.AA06417@lesosun1.epfl.ch>
  209. To: ballard@mc1.wes.army.mil
  210. Subject: Re:  Atmospheric effects
  211. Status: RO
  212.  
  213. Hi Jerrell,
  214.  
  215. If by atmospheric effects you are referring to scattering, absorption, etc.,
  216. the answer is no, Radiance does not support it.  You can, however, model
  217. high clouds and other patterns in the sky directly in Radiance.  If this
  218. is what you are after, I can give you some hints and examples in another
  219. letter.  For now, I'll assume that what you want is the former.
  220.  
  221. The best post-process to get a rough approximation to scattering (and/or
  222. absorption) would use the -z option of rpict to produce a file of pixel
  223. distances then use this information to modify the colors in the final
  224. picture.  This would be done most efficiently by a special purpose program,
  225. but you can do it also with the existing tools pvalue and pcomb.
  226.  
  227. By way of example, let's say you want to imitate haze that fades to white
  228. as an exponential function of distance.  You would first render an ordinary
  229. image with rpict, using the -z option to produce a distance file, like so:
  230.  
  231. % rpict -x 512 -y 480 -z scene.z scene.oct > scene.pic
  232.  
  233. Then you would use pvalue together with pcomb to apply the desired function
  234. to the pixels based on their distance.  Pvalue is necessary to convert the
  235. machine floating point numbers in the z-file into a Radiance picture 
  236. because pcomb only works on this format.
  237.  
  238. % pvalue -r -b -h -df -x 512 -y 480 scene.z | \
  239.     pcomb -e 'ro=f(ri(2));go=f(gi(2));bo=f(bi(2))' \
  240.         -e 'f(p)=c*p+1-c;c=exp(-gi(1)/udist)' \
  241.         -e 'udist=50.0' - scene.pic > scene.fade.pic
  242.  
  243. Note that it is necessary to repeat the image size to pvalue so it knows
  244. what to do with scene.z.  The unit fade-out distance "udist" can be
  245. changed from 50.0 to whatever you like to provide the desired fade-out.
  246.  
  247. If you tell me what kind of effects you desire (perhaps after some
  248. experimentation), I may even write a program to do it more efficiently
  249. for you (still as a post-process, though).  I never did much with
  250. atmospherics because most of my scenes are indoors, and I prefer to
  251. create accurate physical simulations rather than quick hacks.
  252. However, atmospherics is one thing I don't expect to be able to treat
  253. correctly within Radiance in the near future, so a hack is the best
  254. I can do.
  255.  
  256. -Greg
  257.  
  258. =========================================================
  259. LARGE    Large Radiance Models
  260.  
  261. Date: Mon, 1 Jul 91 12:01:59 NZT
  262. From: arch2@ccu1.aukuni.ac.nz
  263. Subject: Large Radiance Models
  264. To: greg@hobbes.lbl.gov
  265.  
  266. Hi,
  267.  
  268. I have been trying to get Radiance to work with models containing
  269. about 10,000 spheres, stored in a text file of about 1M, and keep
  270. getting the "out of octree" space message from oconv.
  271.  
  272. In your first Radiance digest you suggest ways of increasing the
  273. size of models oconv can handle. None of these seem to do the
  274. trick.
  275.  
  276. I have tried these values:
  277.     MAXOBJBLK in object.h is 65535
  278.     MAXOBLK   in octree.h is 524287
  279.     OSTSIZ    in objset.c is 1047821 (It is prime)
  280.  
  281. I also changed OBJECT to a long.
  282.  
  283. oconv dies with this message:
  284.     oconv: system - out of octree space: Not enough space
  285.  
  286. According to ps -l oconv uses up to about 2,500K of memory. (The machine has
  287. 64M and I am allowed a maximum of 10M). The exit code is 2, if it helps.  
  288.  
  289. Also, what does the '-n' parameter do. On my "smaller" models '-n 7' or
  290. similar stopped the error message.
  291.  
  292. Thanks in advance,
  293. Russell (for Paul Bourke)
  294.  
  295. Date: Mon, 8 Jul 91 11:22:47 +0200
  296. From: greg (Greg Ward)
  297. To: arch2@ccu1.aukuni.ac.nz
  298. Subject: Re:  Large Radiance Models
  299.  
  300. Hi Russell (and Paul?),
  301.  
  302. I think your problems with oconv must be due to memory limitations, since
  303. it is a malloc failure that is stopping the process.  If you can't find
  304. any other system variables or administrative things that our limiting
  305. your process size (Cray's operating system places limits on interactive
  306. sessions, for example), then you might try replacing the COMPAT=malloc.o
  307. to COMPAT=bmalloc.o in ray/src/{rt,ot}/Makefile and recompiling.  This
  308. will use the system version of malloc rather than my home-grown routines.
  309. Sometimes people do some pretty strange things with memory allocation.
  310.  
  311. The -n parameter to oconv makes the octree place more surfaces into the
  312. octree voxels.  It is a good idea to increase this number for very complex
  313. scenes if memory is a problem.  You can jack it up to around 16 with little
  314. degradation in rendering time -- at least for spheres.
  315.  
  316. -Greg
  317.  
  318. Date: Tue, 16 Jul 91 17:46:33 NZT
  319. From: arch2@ccu1.aukuni.ac.nz
  320. Subject: Large Radiance Models
  321. To: greg@lesosun1.epfl.ch
  322.  
  323. I am still having "fun" with my large models.
  324.  
  325. Would splitting the .rad file into smaller pieces and using
  326. oconv to merge them together help?
  327.  
  328. Some of the programs I ran today wanted 64M of memory -- they
  329. were run in batch mode where processes are allowed that much memory.
  330.  
  331. Thanks,
  332.  
  333. Russell
  334.  
  335. Date: Tue, 16 Jul 91 17:47:45 NZT
  336. From: arch2@ccu1.aukuni.ac.nz
  337. To: greg@lesosun1.epfl.ch
  338.  
  339. These are the statistics printed out (from the routine PrintMemStats):
  340.  
  341. oconv-l: system - out of octree space: Not enough space
  342. Memory statistics:
  343.     bmalloc: 66437172 bytes allocated
  344.     bmalloc: 3936 bytes freed
  345.     bmalloc: 28696 bytes scrounged
  346.     malloc: 11931552 bytes allocated
  347.     malloc: 5796830 bytes wasted (48.6%)
  348.     malloc: 6006992 bytes freed
  349.     238 * 512
  350.     395 * 256
  351.     720 * 128
  352.     257 * 64
  353.     12 * 32
  354.     53 * 16
  355.     2 * 8
  356.      346248 total bytes in free list
  357.  
  358. Date: Tue, 16 Jul 91 10:05:02 +0200
  359. From: greg (Greg Ward)
  360. To: arch2@ccu1.aukuni.ac.nz
  361. Subject: Re:  Large Radiance Models
  362.  
  363. Hi Russell,
  364.  
  365. Thank you for the details on the oconv errors.  Oconv should be able to
  366. handle 10,000 non-intersecting spheres quite easily.  Your spheres must
  367. be intersecting an awful lot or you are using more spheres than you claim
  368. to be running over 64 Mbytes of memory!
  369.  
  370. Things you can do about it:
  371.  
  372. 1) Change your scene generator so as to avoid generating so many
  373. intersecting spheres.
  374.  
  375. 2) Increase the -n parameter of oconv to 120.
  376.  
  377. 3) Decrease the -r parameter of oconv by half or so.  (This will
  378. cause a set overflow error if you decrease it too much.)
  379.  
  380. 4) Try generating the octree in stages (as you suggested) by giving
  381. oconv progressively more spheres to add to the scene.  You may have
  382. to use the -b option on the initial run of oconv to tell it what you
  383. expect the eventual scene boundaries to be.
  384.  
  385. 5) Use the Radiance instance type to duplicate sections of your scene
  386. rather than enumerating everything.  This is the best method to achieve
  387. geometric complexity without using up all available memory.  You simply
  388. create a fraction of the scene you want, then instantiate it throughout
  389. the environment.  Using heirarchical instancing, it is easy to create
  390. models with many millions of surfaces.
  391.  
  392. Let me know if I can be of any more help.
  393. -Greg
  394.  
  395. =============================================================
  396. PORT    Portability Issues
  397.  
  398. Date: Tue, 16 Jul 91 22:27:29 CDT
  399. From: stephens@minnie.wes.army.mil (Mike Stephens)
  400. To: GJWard@Csa2.lbl.gov
  401. Subject: radiance
  402.  
  403. greg,
  404. this is mike stephens at waterways experiment station (wes) in vicksburg, miss.
  405. i just got the 5th release of your program radiance 1.4 and plan to use it
  406. for several projects we have going on at the scientific visualization center
  407. (svc).
  408.  
  409. i have tried to compile it on our sgi (4D) boxes and have run into some
  410. problems. i was wondering what sgi machines you have successfully
  411. installed radiance on?
  412.  
  413. i get errors in the 'malloc.c' routine (v_pageshift not defined)
  414. also things in tty.c get 'twisted' somehow.
  415.  
  416. we are running irix ver 3.3.2 on our sgi's.
  417.  
  418. any help on this would be greatly
  419. appreciated.
  420.  
  421. thanks,
  422. mike
  423. (stephens@slowhand.wes.army.mil)
  424.  
  425. Date: Wed, 17 Jul 91 08:57:27 +0200
  426. From: greg (Greg Ward)
  427. To: stephens@minnie.wes.army.mil
  428. Subject: Re:  radiance
  429.  
  430. Hi Mike,
  431.  
  432. You need to change the COMPAT=malloc.o to COMPAT=bmalloc.o in the
  433. Makefiles in the src/rt and src/ot directories.  The memory stuff
  434. has not been very well standardized under System V, so some of the
  435. definitions in my malloc.c cause trouble for some implementations.
  436. The routines in tty.c are really written for BSD derivatives, and
  437. don't work for any System V Unix's, but this module is only used
  438. by the AED 512 driver, which you probably don't need.  I guess I
  439. made an error in my makeall script and included this driver when
  440. I shouldn't have.  Anyway, it just won't be made properly --
  441. everything else should work fine.  If you want, you can change
  442. the line in makeall under the Silicon Graphics IRIS choice from
  443. special="aed" to special=
  444.  
  445. I have never tried to compile 1.4 on an IRIS, just 1.3.  I no longer
  446. have easy access to an IRIS workstation.  (Actually, I have never
  447. had easy access to anything except a Sun 3/60.)
  448.  
  449. Hope this helps!
  450. -Greg
  451.  
  452. From: stephens@slowhand.wes.army.mil
  453. To: GJWard@Csa2.lbl.gov
  454. Subject: sgi's and radiance
  455.  
  456. greg,
  457.  
  458. many thanks for your quick response!
  459. the malloc problem could have been solved by yours truly if
  460. i had bothered to CAREFULLY read the comments in malloc.c.
  461. oh, well....
  462.  
  463. instead of the bmalloc=>malloc solution for the sgi anyway
  464. i changed malloc.c so that getpagesize was called as a system
  465. routine (which it is on the sgi irix 3.3.2) and also added
  466. an include because as it wass it couldn't find the type 'daddr_t'
  467. which is in <sys/types.h> in irix 3.3.2.
  468.  
  469. did this last night after i wrote to you and viola the main
  470. critters got made!! aed still didn't but at least i had the
  471. majority of the goodies to play with.
  472.  
  473. went in first thing today (7/17) and drew a pretty daffodil!!!
  474. your code is pretty slick...thanks for your efforts...
  475. atta boy... and all that stuff.
  476.  
  477. take care
  478. mike (stephens@slowhand.wes.army.mil)
  479.  
  480. -----------
  481. Date: Wed, 17 Jul 1991 13:52 +0200
  482. From: "Sigge Ruschkowski email:f87-sir@nada.kth.se or kjr@ekab1.ericsson.se"
  483.  <KJR@kkeka1.ericsson.se>
  484. Subject: Radiance for the Mac
  485. To: greg@hobbes.lbl.gov
  486.  
  487.  
  488.     Hi Greg,
  489.  
  490.     I read in RTNEWS that there is a version of Radiance
  491.     for the Mac. What kind of Macs does Radiance run on?
  492.  
  493.     Sigge
  494.     Sweden
  495.  
  496. Date: Wed, 17 Jul 91 17:28:48 +0200
  497. From: greg (Greg Ward)
  498. To: KJR@kkeka1.ericsson.se
  499. Subject: Re:  Radiance for the Mac
  500.  
  501. Hi Sigge,
  502.  
  503. Radiance runs under A/UX (Apple's UNIX) on the Mac II family.  Since
  504. most folks use the ordinary Mac OS, this doesn't do much good.  But,
  505. if you're interested in A/UX for the MacIntosh, it's not all that
  506. expensive and Radiance will run on it.  I've been using a Mac IIfx
  507. myself successfully to do animations using Radiance.
  508.  
  509. A/UX costs around $500 in the US and X11 software is another $200 or so.
  510. The main drawback is that it requires 80+ Mbytes of disk space and X11
  511. doesn't run well unless you have at least 8 Mbytes of RAM.  Also,
  512. installation is difficult unless you buy it already installed on an
  513. Apple external drive (very expensive).  CD-ROM is the next best
  514. installation method.  You don't want the floppy disk product!
  515.  
  516. -Greg
  517.  
  518. Date: Thu, 18 Jul 1991 08:02 +0200
  519. From: "Sigge Ruschkowski email:f87-sir@nada.kth.se or kjr@ekab1.ericsson.se"
  520.  <KJR@kkeka1.ericsson.se>
  521. Subject: Re: Radiance for the Mac
  522. To: greg@lesosun1.epfl.ch
  523.  
  524.  
  525.     Hi Greg,
  526.  
  527.     thank you for the answer!
  528.  
  529.     As I am using my MacII/8/170 just for private things and 
  530.     am just a poor student, I can't afford to by AUX and a
  531.     80MB hard drive. We will soon have AUX on some of the 
  532.     Macs at school and I will get your ray-tracer and try
  533.     it out.
  534.  
  535.     Have a nice life,
  536.     Sigge
  537.  
  538. --------------
  539. To: greg@hobbes.lbl.gov
  540. Subject: Radiance1R4.tar.Z
  541. Date: Thu, 18 Jul 91 11:42:39 EDT
  542. From: Scott Hankin <hankin@osf.org>
  543.  
  544. Howdy -
  545.  
  546.     I've been trying to work with your latest release, and I appear to be
  547. missing some files.  When I try to build the cubspace model, make tells me it
  548. doesn't know how to make "proof" which the model depends upon.  When I try to
  549. run rview on anything, it fails because it can't open rayinit.cal.  I can't find
  550. rayinit.cal in the tree, I deleted the distribution after expanding it, and I am
  551. reluctant to ftp it again to see if it was indeed in the distribution, but
  552. deleted by one of the many makeall clean's I did while getting things going.
  553.  
  554.     Can you help me out with these files?  I'd really appreciate it.  Thanks.
  555.  
  556. - Scott
  557.  
  558. Scott Hankin  (hankin@osf.org)
  559. Open Software Foundation
  560.  
  561. Date: Fri, 19 Jul 91 08:54:05 +0200
  562. From: greg (Greg Ward)
  563. To: hankin@osf.org
  564. Subject: Re:  Radiance1R4.tar.Z
  565.  
  566. Dear Scott,
  567.  
  568. Sure enough, the critical file "proof" was missing from the distribution.
  569. An over-zealous cleanup job on my part, I'm afraid.  I've added it back
  570. in again -- thanks for bringing it to my attention.  To save you from
  571. ftp'ing it again (though it's small), I'll send you the file in the next
  572. message.
  573.  
  574. The rayinit.cal file (and other essential library files) come in the ray/lib
  575. directory of the distribution.  They are not deleted by any cleanup procedure
  576. I wrote, but you may not have remembered to set the RAYPATH environment
  577. variable to tell the programs where to find this directory.  The makeall
  578. script is supposed to do this automatically, but it only works if you
  579. tell it to go ahead and install the library in the location you select.
  580. You can always set the RAYPATH variable manually with a line in your
  581. .login file like so:
  582.  
  583.     setenv RAYPATH .:/installpath/ray/lib
  584.  
  585. Where "installpath" is replaced with the place you installed the distribution.
  586.  
  587. Hope this helps!
  588. -Greg
  589.  
  590. To: "(Greg Ward)" <greg@lesosun1.epfl.ch>
  591. Subject: Re: Radiance1R4.tar.Z 
  592. Date: Fri, 19 Jul 91 09:47:43 EDT
  593. From: Scott Hankin <hankin@osf.org>
  594.  
  595.     It does indeed.  Thanks for the info - things are up and running great even
  596. as we speak.  It seems that in a moment of insanity (and a temporary shortage of
  597. disk space) I removed the ray/lib subtree - for some reason I had decided it was
  598. generated during the build process.  I was obviously wrong.
  599.  
  600.     Thanks for the help, the software, the work it involved - thanks for
  601. everything.  I never cease to be amazed at the effort folks like you will put
  602. into things they make available to the public.  You are one of the heroes of
  603. learning.  I know I will get a great deal out of using and examining Radiance. 
  604. Keep up the terrific work!
  605.  
  606. - Scott
  607.  
  608. Scott Hankin  (hankin@osf.org)
  609. Open Software Foundation
  610.  
  611. -------------------
  612. The following message is not specifically about Radiance, but it does
  613. get around a bug in the 1.4 release of x11image so take note.  By the
  614. way, both x11image (now called just plain old "ximage") and xshowtrace
  615. have been fixed for the next release.
  616.  
  617. Date: Sat, 20 Jul 91 12:23:12 PDT
  618. From: raja@robotics.berkeley.edu (Raja R. Kadiyala)
  619. To: robotics-users@robotics.berkeley.edu
  620. Subject: xdvi and openwindows
  621.  
  622. Many have noticed that some programs such as xdvi and xfig do not work
  623. properly under openwindows -- they fail to accept input in the window.
  624.  
  625. The fix is to tell the window manager to explicitely get input from the window
  626. this is done by putting the following lines in your
  627. .Xresourses/.Xdefaults/.Xdef (or wherever your applications resources are
  628. kept)
  629.  
  630. xfig.Input: true
  631. xdvi.Input: true
  632.  
  633. raja
  634.  
  635. ----------------------
  636. Date: Wed, 7 Aug 91 20:09:43 EDT
  637. From: chen@eleceng.ee.queensu.ca (Junan Chen)
  638. To: greg@hobbes.lbl.gov
  639. Subject: Radiance
  640. Status: RO
  641.  
  642. Hi, Greg:
  643.  
  644. Thanking you for your mail of July 31.  I tried to grab Radiance at midnight,
  645. and successfully got everything I need.
  646.  
  647. After I installed the Radiance, I found *rview* didn't get compiled.  I also
  648. checked the *devtable.c*, and the default_driver is x11_init(), though I 
  649. replied "no x10 support" during the installation.  I modified default_driver
  650. of devtable.c to *sun*, but *make  rview* still doesn't work properly.
  651.  
  652. The other thing is how to specify the focal length with the command *rpict*.
  653. I checked the reference manual and relevant manual pages, but couldn't find
  654. any direct way to do that. 
  655.  
  656. Could you please give me some hint to my questions.
  657.  
  658. BTW, we use a sparc-2 station with a 24-bit graphics adaptor which is compatiblewith CG8 and can be set up as 8-bit CG4 as well.  Most of the time we use it as
  659. a 8-bit CG4 workstation.
  660.  
  661. I really appreciate your help.
  662.  
  663. Junan Chen
  664.   
  665. Date: Thu, 8 Aug 91 09:46:06 +0200
  666. From: greg (Greg Ward)
  667. To: chen@eleceng.ee.queensu.ca
  668. Subject: Re:  Radiance
  669.  
  670. Hi Junan,
  671.  
  672. I have had this asked of me before, so I decided to make a little readme
  673. file explaining what to do if you don't have X11 support.  I've attached
  674. it to the end of this letter.  (When you answered "no" to X10 support,
  675. the script still assumed you had X11 support -- which is very different!)
  676.  
  677. There is no adjustment for focal length, since the renderers do not have
  678. depth of field in their simple pinhole camera model.  If you want this,
  679. you will have to add it yourself.  [But see PINTERP topic below -G]
  680.  
  681. -Greg
  682.  
  683. --------------
  684. This Radiance distribution assumes that you have X11 support
  685. (ie.  a /usr/include/X11 directory and /usr/lib/libX11.a library).
  686. If this is not the case, you will have to make a couple of changes
  687. to the files in the src/rt directory to make "rview" compile properly.  
  688. If you are a thorough person, you can also make changes to the Makefile's
  689. in the src/util and src/px directory to avoid some other spurious but
  690. unimportant errors.
  691.  
  692. The following diffs should be applied to Makefile and devtable.c in the
  693. src/rt subdirectory:
  694.  
  695. ============= rt/Makefile =============
  696. 35c35
  697. < DOBJS = devtable.o devcomm.o editline.o x11.o x11twind.o \
  698. ---
  699. > DOBJS = devtable.o devcomm.o \
  700. 37c37
  701. < DSRC = devtable.c devcomm.c editline.c x11.c x11twind.c \
  702. ---
  703. > DSRC = devtable.c devcomm.c \
  704. 39c39
  705. < DLIBS = -lX11
  706. ---
  707. > DLIBS = 
  708.  
  709. ============= rt/devtable.c =============
  710. 15c15
  711. < char  dev_default[] = "x11";
  712. ---
  713. > char  dev_default[] = "sun";
  714. 17,18d16
  715. < extern struct driver  *x11_init();
  716. 23c21
  717. <     {"x11", "X11 color or greyscale display", x11_init},
  718. ---
  719. >     {"x11", "X11 color or greyscale display", comm_init},
  720.  
  721. These changes may be applied to the Makefile's in the src/util and
  722. src/px subdirectories for cleaner compilation:
  723.  
  724. =============== px/Makefile =============
  725. 19c19
  726. < ra_t8 ra_bn ra_t16 pcomb pinterp ximage xshowtrace pflip
  727. ---
  728. > ra_t8 ra_bn ra_t16 pcomb pinterp xshowtrace pflip
  729.  
  730. =============== util/Makefile ============
  731. 13c13
  732. < PROGS = makedist swaprasheader findglare xglaresrc glarendx
  733. ---
  734. > PROGS = makedist swaprasheader findglare glarendx
  735.  
  736. =========================================================
  737. PINTERP    Uses for the Pinterp Program
  738.  
  739. From: Frank Bennett <fwb@hpfcfwb.fc.hp.com>
  740. Subject: Radiance
  741. To: greg@hobbes.lbl.gov
  742. Date: Tue, 20 Aug 91 9:46:15 MDT
  743.  
  744. Greg:
  745.     I just picked up Radiance. Look's interesting. I found the following
  746. missing:
  747.  
  748.     obj/model.new/rayinit.cal
  749.     obj/cabin/tree.rad  - landscape wants to instanciate tree.oct
  750.     
  751.     I have done alot yet, did go back & pick up some .pic files
  752.     & pub/objects/gjward.tar.Z
  753.  
  754.     I have not been able to assertain (from Raytracing News or your
  755.     package) whether you generate "lit" polygons with soft shadows,
  756.     which you can then walk through. The advantage of a Radiosity
  757.     system is you only need to recompute the sceen if the lights or
  758.     objects are moved, but not for camera moves.
  759.  
  760. good work,
  761.  
  762. Frank Bennett - Hewlett Packard 
  763. P.S. a plug: Our new Snake CPU love to raytrace, the aquarium from:
  764.  
  765. ftp.ee.lbl.gov:RAY/aq.tar.Z
  766.  
  767.     Spark2     52 hours
  768.     Cray YMP   18 hours
  769.     HP9000/720 17.5 hours
  770.     HP9000/750 13 hours
  771.  
  772. Date: Wed, 21 Aug 91 08:26:06 +0200
  773. From: greg (Greg Ward)
  774. To: fwb@hpfcfwb.fc.hp.com
  775. Subject: Re:  Radiance
  776.  
  777. Hello Frank,
  778.  
  779. It sounds like you need to set the environment variable RAYPATH to
  780. the location of the library directory because it's not in the default
  781. location /usr/local/lib/ray.  The README file should explain it, but
  782. basically you need a line in your .login like:
  783.  
  784.     setenv RAYPATH .:/my/radiance/path/lib
  785.  
  786. Then the problems you mentioned should go away.
  787.  
  788. As for soft shadows, the default options of rpict produce sharp shadows,
  789. but you can set the following if you want soft shadows:
  790.  
  791.     -sp 1 -dj .5
  792.  
  793. The -sp 1 value turns off image plane sampling, so the renderings will
  794. take substantially longer.  Also, if you don't do any anti-aliasing by
  795. running the result through pfilt and reducing the resolution, the shadows
  796. will appear noisy.
  797.  
  798. I am aware that soft shadows and walk-through animations are big advantages
  799. of radiosity methods, but then you're stuck with simple polygonal scenes
  800. and diffuse surfaces, so it's a tradeoff.  I have implemented a z-buffer
  801. interpolation program, pinterp, for generating walk-through animations that
  802. makes ray tracing a reasonable way to go, actually.  It would be nice to
  803. store all that shadow information somehow in the scene, but the memory
  804. requirements are daunting.  We're running these programs on small machines,
  805. too you know.
  806.  
  807. Thanks for your input.
  808. -Greg
  809.  
  810. Date: Wed, 14 Aug 91 17:24:34 -0400
  811. From: hr3@prism.gatech.edu (RUSHMEIER,HOLLY E)
  812. To: greg@lesosun1.epfl.ch
  813.  
  814. For our computer vision project, we are using Radiance to model a
  815. finite size pinhole by making lots of images from different points in
  816. the pinhole and then adding them up, accounting for the shifts in pixel
  817. location. Apart from writing new code, is this the only way to do this?
  818.  
  819. Holly
  820.  
  821. Date: Thu, 15 Aug 91 09:41:30 +0200
  822. From: greg (Greg Ward)
  823. To: hr3@prism.gatech.edu
  824. Subject: looking at the world through a pinhole
  825.  
  826. Hi Holly,
  827.  
  828. Regrettably, I can't think of any more direct way to do pinhole sampling
  829. than what you're doing already.  However, there is a way you can do it
  830. a little faster, I think.  Generate an image from the center using rpict
  831. with the -z option to generate a z-file.  Then, use pinterp with the
  832. following options to produce images at different points like so:
  833.  
  834.     % rpict [opts] [view] -x xres -y yres -z scene.z scene.oct > scene.pic
  835.     % pinterp -vf scene.pic -vp x1 y1 z1 -vs h1 -vl v1 -x xres -y yres \
  836.         -ff -r "[opts] scene.oct" scene.pic scene.z > scene1.pic
  837.  
  838. Pinterp just moves the pixels around according to the new viewpoint using
  839. a z-buffer approach and calling on rtrace (in this case) to compute
  840. pixels it cannot find.  The only problem with this technique is that it
  841. does not correctly follow specular reflections in the new image, so if
  842. you are trying to see depth of field in a reflection you need to wait
  843. for rpict.
  844.  
  845. Also, you can use the view shift and lift parameters to do the pixel
  846. shifting for you.  You just have to compute the appropriate values based
  847. on the distance to your pinhole's image plane.  I would work out the
  848. formulas for you, but I'm sure I'd make some dumb error.
  849.  
  850. Finally, I would recommend using pcomb to add the images up if you aren't
  851. using it already.  You can give a scalefactor of 1/N for each image
  852. and when you pass it through pfilt later you should get the correct
  853. radiance values.
  854.  
  855. Let me know if I can be of any help, and thanks very much for sending
  856. the report and the announcement.
  857.  
  858. -Greg
  859.  
  860.