|
|
|
|
|
|
| |
| |
|
|
From: Ive
Subject: Re: Spectral Rendering with POV-Ray: comments on the tutorial
Date: 28 Sep 2012 08:34:17
Message: <50659949$1@news.povray.org>
|
|
|
| |
| |
|
|
Am 28.09.2012 10:05, schrieb Thomas de Groot:
> I patched in an updated gold nugget bowl with M_Gold(0.9). I first tried
> a reflectance of 0.5 to see the difference.
>
Looks better, methinks ;)
The problem with most of these "old" texture definitions is not only the
rgb vs. srgb problem. They are simply designed at a time when nobody was
using radiosity or HDR-lighting (i.e. not necessarily HDRI but
light_sources with emitting values higher than 1.0). For example
golds.inc uses an ambient term for the color *calculation* but ambient
(as part of the finish) gets meanwhile switched off as soon radiosity is
used.
I'm always did find it easier to use textures that come close to real
world physics (within the limitations of raytracing) and as such do work
under all lighting conditions (conventional with/without radiosity and
radiosity only) instead of tweaking a texture every time I use it.
To me this is not so much about photorealism, it is more about laziness ;)
-Ive
Post a reply to this message
|
|
| |
| |
|
|
From: Thomas de Groot
Subject: Re: Spectral Rendering with POV-Ray: comments on the tutorial
Date: 28 Sep 2012 10:03:05
Message: <5065ae19$1@news.povray.org>
|
|
|
| |
| |
|
|
On 28-9-2012 14:33, Ive wrote:
> Am 28.09.2012 10:05, schrieb Thomas de Groot:
>> I patched in an updated gold nugget bowl with M_Gold(0.9). I first tried
>> a reflectance of 0.5 to see the difference.
>>
> Looks better, methinks ;)
Yes, it does indeed.
> The problem with most of these "old" texture definitions is not only the
> rgb vs. srgb problem. They are simply designed at a time when nobody was
> using radiosity or HDR-lighting (i.e. not necessarily HDRI but
> light_sources with emitting values higher than 1.0). For example
> golds.inc uses an ambient term for the color *calculation* but ambient
> (as part of the finish) gets meanwhile switched off as soon radiosity is
> used.
I fully agree. Normally, I rarely use the "out of the box" textures and
prefer to brew my own. Only for those special cases like gold I am
rather unsure and tend to use something available, forgetting that they
are often far from up-to-date.
> I'm always did find it easier to use textures that come close to real
> world physics (within the limitations of raytracing) and as such do work
> under all lighting conditions (conventional with/without radiosity and
> radiosity only) instead of tweaking a texture every time I use it.
You are privileged to know what you are talking about :-)
> To me this is not so much about photorealism, it is more about laziness ;)
An acceptable way of life ;-)
Thomas
Post a reply to this message
|
|
| |
| |
|
|
From: clipka
Subject: Re: Spectral Rendering with POV-Ray: comments on the tutorial
Date: 29 Sep 2012 21:10:02
Message: <50679bea$1@news.povray.org>
|
|
|
| |
| |
|
|
Am 28.09.2012 14:33, schrieb Ive:
> I'm always did find it easier to use textures that come close to real
> world physics (within the limitations of raytracing) and as such do work
> under all lighting conditions (conventional with/without radiosity and
> radiosity only) instead of tweaking a texture every time I use it.
> To me this is not so much about photorealism, it is more about laziness ;)
+1
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Ive <ive### [at] lilysoftorg> wrote:
> The animation feature of POV-Ray can be used to make it a spectral
> render engine. The basic idea is to render a set of gray-scale images
> - each representing a specific wavelength - and finally combine them
> using the CIE color match function.
> To simplify this task I have created a few POV-Ray SDL scripts and some
> examples.
> You'll find the download link, some images and more explanation here:
>
> http://www.lilysoft.org/CGI/SR/Spectral%20Render.htm
>
> -Ive
Would this help POV to render caustics any faster?
I ask this because I could not after all my attempts get POV-Ray to render some
caustics scene with chromatic dispersion as fast as Lux Render did (Lux uses
spectral rendering)other than that I would have been so happy to use POV because
of so many other features, but for this particular scene, the speed issue was
really too high of a bottleneck, preventing it to keep the same quality between
the two renderers.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Am 01.01.2013 22:23, schrieb Mr:
> Ive <ive### [at] lilysoftorg> wrote:
>> The animation feature of POV-Ray can be used to make it a spectral
>> render engine. The basic idea is to render a set of gray-scale images
>> - each representing a specific wavelength - and finally combine them
>> using the CIE color match function.
>> To simplify this task I have created a few POV-Ray SDL scripts and some
>> examples.
>> You'll find the download link, some images and more explanation here:
>>
>> http://www.lilysoft.org/CGI/SR/Spectral%20Render.htm
>>
>> -Ive
>
> Would this help POV to render caustics any faster?
>
> I ask this because I could not after all my attempts get POV-Ray to render some
> caustics scene with chromatic dispersion as fast as Lux Render did (Lux uses
> spectral rendering)other than that I would have been so happy to use POV because
> of so many other features, but for this particular scene, the speed issue was
> really too high of a bottleneck, preventing it to keep the same quality between
> the two renderers.
I'm not sure how Lux does it, but here's one optimization I could
imagine, which POV-Ray currently doesn't do:
When the generated photon map is evaluated for a dispersed (and hence
monochromatic) ray from the camera, dispersed (and hence also
monochromatic) photons with a different wavelength could theoretically
be ignored (and those typically are a lot if you make ample use of
high-quality dispersion).
In POV-Ray, the fact that a photon was subject to dispersion (and hence
is monochromatic) is forgotten in the stored photons map; such photons
are instead stored just like normal non-dispersed colored photons. Thus,
POV-Ray needs to evaluate each and every photon even for monochromatic rays.
As Ive's approach only deals with one single wavelength per render
anyway, it automatically gets that optimization for free. However, for
non-dispersed rays and photons it loses a lot in terms of performance,
as it needs to trace such rays and photons over and over again for each
wavelength even though their trajectory is the same for all wavelengths.
Hard-coding this optimization into POV-Ray should be no big deal; it
doesn't even need full-fledged spectral color math to work. It would
probably increase the photons map memory footprint by 20% though.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
clipka <ano### [at] anonymousorg> wrote:
> Am 01.01.2013 22:23, schrieb Mr:
> > Ive <ive### [at] lilysoftorg> wrote:
> >> The animation feature of POV-Ray can be used to make it a spectral
> >> render engine. The basic idea is to render a set of gray-scale images
> >> - each representing a specific wavelength - and finally combine them
> >> using the CIE color match function.
> >> To simplify this task I have created a few POV-Ray SDL scripts and some
> >> examples.
> >> You'll find the download link, some images and more explanation here:
> >>
> >> http://www.lilysoft.org/CGI/SR/Spectral%20Render.htm
> >>
> >> -Ive
> >
> > Would this help POV to render caustics any faster?
> >
> > I ask this because I could not after all my attempts get POV-Ray to render some
> > caustics scene with chromatic dispersion as fast as Lux Render did (Lux uses
> > spectral rendering)other than that I would have been so happy to use POV because
> > of so many other features, but for this particular scene, the speed issue was
> > really too high of a bottleneck, preventing it to keep the same quality between
> > the two renderers.
>
> I'm not sure how Lux does it, but here's one optimization I could
> imagine, which POV-Ray currently doesn't do:
>
> When the generated photon map is evaluated for a dispersed (and hence
> monochromatic) ray from the camera, dispersed (and hence also
> monochromatic) photons with a different wavelength could theoretically
> be ignored (and those typically are a lot if you make ample use of
> high-quality dispersion).
>
> In POV-Ray, the fact that a photon was subject to dispersion (and hence
> is monochromatic) is forgotten in the stored photons map; such photons
> are instead stored just like normal non-dispersed colored photons. Thus,
> POV-Ray needs to evaluate each and every photon even for monochromatic rays.
>
> As Ive's approach only deals with one single wavelength per render
> anyway, it automatically gets that optimization for free. However, for
> non-dispersed rays and photons it loses a lot in terms of performance,
> as it needs to trace such rays and photons over and over again for each
> wavelength even though their trajectory is the same for all wavelengths.
>
> Hard-coding this optimization into POV-Ray should be no big deal; it
> doesn't even need full-fledged spectral color math to work. It would
> probably increase the photons map memory footprint by 20% though.
Thanks! Your explanation is so clear! I would vote for the speed optimization as
I have so much RAM, but I would understand if others disagree. In which case I
would never be able to finish that stupid render. It's not even pretty, just a
comparative test :-)
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |