Wednesday, January 12, 2011

We fixed the shadow bug!

Earlier today, we announced a maintenance release for Google SketchUp 8 (free and Pro) that is a free upgrade for all SketchUp 8 users. One of the bugs we’ve fixed is the oldest and thorniest in our bug tracker. Most folks call it the “Shadow Bug.”

Let’s roll back the clock a little bit before I explain the fix. In the spring of 2001, we introduced real-time volumetric shadow rendering in SketchUp 1.1. At the time, only video games were really doing this sort of rendering, and it was pretty exciting to see shadows cast from a model that you made yourself. When I got my first demo, I declared them to be the most “Undeniably Sexy” thing that I had seen all week. It was shortly after that that I left my day job to join @Last Software – SketchUp was clearly something that I had to be a part of.

Awesome though shadows were in most cases, there was a fatal flaw. When the camera passed inside a shadow volume, there were places where the rendering algorithm just plain fell flat on its face – leading to flashy, jagged and just plain wrong-looking shadows from some points of view. Unfortunately, there wasn’t any obvious way around that problem.

In the SketchUp 3 and 4 release cycles (launched in July of 2004), we worked on this problem some more and found a new algorithm that looked promising. Unfortunately, we found that this algorithm, while usually better when the camera was inside the shadow volume, failed even more spectacularly than our original algorithm in other common uses. Admitting temporary defeat, we pulled the new algorithm out and went back to the drawing board again.

Hero engineer sporting early @Last Software t-shirt

As I’ve often said when asked about “the shadow bug”, the only way we’d be able to fix it is if we came up with a clever new algorithm. As luck will have it, one of our engineers (the same guy who implemented the original shadow rendering ten years ago) never quite gave up on the problem. And a few weeks ago, he figured out a new solution. Just like that. I’m proud to say we’ve (finally) fixed shadow rendering for all those cases where the camera was inside the shadow volume and included it as a part of today’s maintenance release. Need a visual? Here’s a video that shows the our new and improved shadow rendering at work:



There’s lots of other good bug fixes in M1, and it is both free and recommended for all users. Here's how to make sure you have the latest version of SketchUp 8:

Windows: Choose Help > Check for Update
Mac: Choose SketchUp > Check Web for Update

Posted by John Bacus, SketchUp Product Manager

17 comments:

  1. Great work for all SU users! It's SU9!

    ReplyDelete
  2. The pomp & ceremony of the music is certainly well deserved. Congratulations from a dedicated user from SU5 vintage. I have put up with this for 5 years good naturedly because the rest of the programme is just so cool.

    Yippee!

    or should I say...

    @last!
    ;)

    ReplyDelete
  3. Well.. that video says it all, really. Good riddance!!

    ReplyDelete
  4. Thank you. After years of waiting I do not have to think more about how I put a camera in space! User since 2002.

    ReplyDelete
  5. Now lets PLEASE work on softening the "on ground" shadows.
    Or at least take the jaggies out.

    ReplyDelete
  6. My first full day of work with M1. halleluja! Not a single crash in SkU or LayOut. And no more subtly changing layout view to avoid the shadow bug! Thanks for such a fantastic update. My work life is so much better now.

    ReplyDelete
  7. I installed the update yesterday.
    I didn't had any problems before, but now there are many problems. Can I upload a picture somewhere to show?

    ReplyDelete
  8. And by problems, I mean there are a lot of little faces appearing and dissapearing when moving through the model. A have shadow turned on and off, problem stays.

    (Sorry for my english...)

    ReplyDelete
  9. @Bob:

    I'm sorry to hear that you're having problems. Can I trouble you to please report the issues you're seeing to
    our support team? They should be able to help you out.

    Thanks, Aidan

    ReplyDelete
  10. I think "the same guy who implemented the original shadow rendering ten years ago" deserves a shout-out by name, eh?

    ReplyDelete
  11. Even worse! As soon as I activate shadows, everything disappears when I try to zoom in...

    ReplyDelete

You are welcome to contribute comments, but they should be relevant to the conversation. We reserve the right to remove off-topic remarks in the interest of keeping the conversation focused and engaging. Shameless self-promotion is well, shameless, and will get canned.