Monthly Archives: December 2019

About that glass ball…

Here’s a classic image you’re probably familiar with, which is having its 40th anniversary:

I recently joined Reddit’s Raytracing feed, where I noticed it recently here, in Reddit’s Vintage CGI feed. I’d been playing with a real-time demo of this scene in OptiX 7, as it’s a sample program, optixWhitted. Examining that demo, it pointed out something that never dawned on me: the glass ball is actually mostly hollow, not solid glass!

Here’s optixWhitted with an inner radius of 0.96 (vs. 1.0 for the outer radius) vs. a solid glass ball:


Quite different!

I wrote Turner Whitted, as I had a theory:
Why did you make the glass sphere in “An improved illumination model for shaded display” hollow?
My theory is “it looked better” – you can see a bit of refraction, but there’s not so much that it’s confusing to the viewer.


Turns out, that wasn’t really it. Turner replied:

Obviously a solid sphere would be too heavy. 🙂

Concentric spheres offered a more interesting ray tree with internal reflection and also served as a testbed for using the outer sphere as a bounding volume for the inner one. I didn’t really get far with bounding volumes until teaming up with Steve Rubin for SIGGRAPH ’80. As you point out, concentric spheres also look better.

I also wasn’t sure when exactly his paper was officially published, as the paper was presented at SIGGRAPH ’79, but the ACM Digital Library shows just an abstract. The published version is stored as a Communications of the ACM paper in 1980. Turner comments:

As for publication, the entire paper and not just the abstract was distributed at SIGGRAPH ’79, but only the abstract was included in the proceedings. In those days the papers committee chose a couple of papers each year to forward to CACM. Those papers were distributed to SIGGRAPH attendees in a supplement. After 1980 they stopped doing that and published full papers in the conference proceedings and picked 3 or 4 to re-publish in TOG.

It’s a bit hard for me to remember how slow and friction-filled it was back then, where you pretty much had to use the mail to get or give any information and had to go to the university library to look up and photocopy articles (if you were lucky enough to find them on the shelves). And we walked to school through the snow uphill both ways.

To conclude, here’s a physical homage to the paper, with various transparent balls I have lying around on its first page. The one on the left is a glass shell, though quite wobbly in its thickness.

And if you just can’t get enough, here’s one with a plastic shell instead, which is more uniform but where the shell gets thicker toward its bottom (in the upper right part of it in this view).

Seven Things for December 21, 2019

I’ve been collecting too many links, with all of them begging me to share them. Here’s the triage:

  • High Performance Graphics 2020’s call for participation is up. Key due date is April 16th (but you need to register the paper 3 days earlier than that). Retweet here.
  • A high-res scan of a Nefertiti sculpture is now available. The story of it being freed up after a three-year effort is a good read, with a knee-jerk “we own it” attitude by the museum. I hadn’t heard of “the gift shop defense” before, and them carving a CC license in the base is pretty ironic, given how much they were defending not releasing it. He’s now pushing on the Musée Rodin for The Thinker. The Nefertiti file is in OBJ format with textures – it’s pretty nice, 12.8M tris. Download from the page using the link in the upper right, despite what the text below says; you can also view and download it on Sketchfab. (thanks to Adam Marrs for the link)
  • Fascinating inverse rendering applications with Mitsuba2’s differentiable renderer – see the video from 2:38 to 4:50 in particular. Code’s not available yet.
  • Trying to explain ray tracing to your relatives during the holidays? Of course you are. Here’s my contribution to the cause (or with Mandarin subtitles), in good part based on Pete Shirley’s Intro to RT talk (see links at the bottom of the page). Tweeted here.
  • Thanks to a number of people, much of the ancient globillum mailing list archive is now available for download. If you know of a good email text file viewer, please let me know.
  • I’m in the wrong field. People research the rubber pencil illusion, about the only magic trick I learned as a kid. Research into the RPI is here and here, which conclude that the pencil’s appearance of rubberiness is affected by different factors. This so needs a good three.js demo. I also want to see a character in some expansion of the game Control explain how this phenomenon is actually a paranormal event.
  • Someday the photographer for your wedding will ask “crowd-source point cloud or laser scan?” – article; model on Sketchfab.