POV-Ray : Newsgroups : povray.advanced-users : area_light, looks_like, & auto bounding problem : Re: area_light, looks_like, & auto bounding problem Server Time
3 Jul 2024 04:29:08 EDT (-0400)
  Re: area_light, looks_like, & auto bounding problem  
From: clipka
Date: 13 Dec 2008 22:30:00
Message: <web.49447d4d2080b0a0c5e090360@news.povray.org>
"Kenneth" <kdw### [at] earthlinknet> wrote:
> Though I'm still a bit perplexed as to why it happens with an area_light's
> looks_like object, but not with a point_light's. Perhaps that's indicated in
> your explanation; I'll have to re-read it.

I guess the reason is that with point lights, another optimization approach
called "LBuffers" can be (and is) used: Instead of testing for bounding boxes
intersection during tracing, all the bounding boxes are first projected onto a
cube around each light source, and during tracing only the projections of the
bounding boxes are tested. I didn't have a look at the corresponding code, but
I guess that no_shadow objects are filtered out during the projection (which is
possible because the LBuffers are used solely for shadow testing, while the
actual bounding boxes are used in various ray-object hit tests) so they don't
get in the way unnecessarily during the actual rendering.

> > From what I see in the 3.7 beta code, these issues have been addressed, by
> > building the no_shadow and similar filters into the core functions that
> > actually do the bounding box and intersection tests.
>
> That's good news!  (I'm rather...shy...about running betas. Have you run my test
> scene with the lastest one? I'm curious to know how it performs. You never
> know... ;-)   Thanks for taking the time to go through this problem. And thanks
> to the POV team for the good changes!

Actually it's not a big deal to install the beta. On Windows systems, it
installs completely in a separate directory. Similarly on Unix systems - except
that it renames any existing povray binary and installs itself as "povray", but
a simple re-rename after installation easily fixes this, so that you can have
"povray" run the original 3.6, and something like "povray-beta" run the 3.7
beta.

Anyway, I just took time to test your scene (I only looked at the code before);
on my Windows XP / P4 3.4 GHz system, the 3.6.1c needs 22 seconds for the scene
*at best* (i.e. bounding disabled or looks_like extremely small), whereas the
3.7.0 beta 29 spits out the result after just 6-8 seconds, with bounding
settings or looks_like size having no significant impact.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.