POV-Ray : Newsgroups : povray.unofficial.patches : MegaPOV 1.2.1 and reflection blur Server Time
14 May 2024 01:39:12 EDT (-0400)
  MegaPOV 1.2.1 and reflection blur (Message 3 to 12 of 12)  
<<< Previous 2 Messages Goto Initial 10 Messages
From: GP70
Subject: Re: MegaPOV 1.2.1 and reflection blur
Date: 4 Jan 2006 10:30:00
Message: <web.43bbe9a0e28d25494d24a2b10@news.povray.org>
Warp <war### [at] tagpovrayorg> wrote:
> GP70 <pap### [at] liberoit> wrote:
> > My only concerning is about the decision of removing the
> > "reflection_blur" feature from this release (see rev. 0.7) which, for me,
> > could add more realism to reflective surfaces.
>
>   Blurred reflections (and refractions) can already be used in the
> official POV-Ray (since quite long time, actually), and in fact they
> can be used in a more versatile and diverse ways. That might be one
> reason why they didn't bother keeping the reflection_blur hack in
> megapov.
>   Granted, the trick to do it is a bit more complex, but at least
> it is possible. See:
>
> http://tag.povray.org/povQandT/languageQandT.html#blurredreflection
>
> --
>                                                           - Warp

Thank you very much, I will try to use this trick!

GP


Post a reply to this message

From: Christoph Hormann
Subject: Re: MegaPOV 1.2.1 and reflection blur
Date: 4 Jan 2006 10:50:05
Message: <dpgqlp$p9r$1@chho.imagico.de>
Warp wrote:
>>My only concerning is about the decision of removing the
>>"reflection_blur" feature from this release (see rev. 0.7) which, for me,
>>could add more realism to reflective surfaces.
> 
>   Blurred reflections (and refractions) can already be used in the
> official POV-Ray (since quite long time, actually), and in fact they
> can be used in a more versatile and diverse ways. That might be one
> reason why they didn't bother keeping the reflection_blur hack in
> megapov.

That's right (although it wasn't the question whether to keep the patch 
but whether to reintegrate it).  A reflection blur patch with adaptive 
sampling would be very welcome though.

Concerning photons-only light sources - you can accomplish this by 
shooting the photons in a first pass (with only 1 pixel size output) and 
using load_file in the actual render without the light sources.

Christoph

-- 
POV-Ray tutorials, include files, Landscape of the week:
http://www.imagico.de/ (Last updated 31 Oct. 2005)
MegaPOV with mechanics simulation: http://megapov.inetart.net/


Post a reply to this message

From: GP70
Subject: Re: MegaPOV 1.2.1 and reflection blur
Date: 5 Jan 2006 02:25:01
Message: <web.43bcc903e28d2549dd9bbf200@news.povray.org>
Christoph Hormann <chr### [at] gmxde> wrote:
>
> That's right (although it wasn't the question whether to keep the patch
> but whether to reintegrate it).  A reflection blur patch with adaptive
> sampling would be very welcome though.
>
> Concerning photons-only light sources - you can accomplish this by
> shooting the photons in a first pass (with only 1 pixel size output) and
> using load_file in the actual render without the light sources.
>
> Christoph
>


Yes, yesterday I've used the trick of the avaraged textures but I don't like
very much the results. In any case I will try to improve it in some way...
Anyway if the reflection blur features could be reintegrated... Perhaps I
should have to study the phisics of this phenomenon and propose something!

In fact I have started my ray-tracing study since DKB-Trace when I was a
student and then for a lot of years I didn't have any more time for it. Now
it is the moment to start again perhaps also collaborating!

Thanks for the photons trick!
GP


Post a reply to this message

From: Warp
Subject: Re: MegaPOV 1.2.1 and reflection blur
Date: 5 Jan 2006 04:32:33
Message: <43bce7b0@news.povray.org>
GP70 <pap### [at] liberoit> wrote:
> Yes, yesterday I've used the trick of the avaraged textures but I don't like
> very much the results. In any case I will try to improve it in some way...
> Anyway if the reflection blur features could be reintegrated...

  You should not dismiss the trick just because you didn't get it to
work immediately.
  You are writing as if you aren't getting the same result as with
megapov. However, the trick in question can be tuned to simulate
basically exactly what megapov was doing. Thus if you are not getting
the same result it's because you didn't set it up correctly, not because
it's not possible.
  Just read the text behind the url carefully. It explains everything.
It feels that you just quickly tried the example code given without
reading the explanatory texts carefully enough. The example code is
just *one* way of doing it (and it does it differently from what the
megapov patch does it).

  The trick can not only be tuned to do almost exactly what the megapov
patch was doing, but it can be made to do a whole lot of other things
too. Why would you want the limited megapov patch to be reintegrated?

-- 
                                                          - Warp


Post a reply to this message

From: GP70
Subject: Re: MegaPOV 1.2.1 and reflection blur
Date: 5 Jan 2006 08:05:01
Message: <web.43bd191ce28d25494d24a2b10@news.povray.org>
Why would you want the limited megapov patch to be reintegrated?
>
> --
>                                                           - Warp

I apologize, I don't "want" the limited megapov patch to be reintegrated. I
was only searching a way to generate blurred reflection to add realism to
my renderings (Perhaps this wasn't the right discussion group to ask).

In any case I would be very happy if an efficient way to have blurred
reflections with physically correct behaviour will be included in future.

I will continue to experiment with avareged textures; it is not my intention
to discard this solution!

GP.


Post a reply to this message

From: Warp
Subject: Re: MegaPOV 1.2.1 and reflection blur
Date: 5 Jan 2006 08:35:19
Message: <43bd2097@news.povray.org>
GP70 <pap### [at] liberoit> wrote:
> In any case I would be very happy if an efficient way to have blurred
> reflections with physically correct behaviour will be included in future.

  I'm afraid that's next to impossible.

  The only way in a generic raytracer like povray to get accurate blurred
reflections is to shoot many rays. There just aren't any better alternatives.

  One alternative is to use an environment map. However, this technique
has several problems:
  - It's not physically accurate (especially with objects close to the
reflecting object).
  - It cannot be used for self-reflection.
  - It cannot be used for mutual reflection of two reflecting objects.
  - It's limited by the pixel size of the map and consumes tons of memory.

-- 
                                                          - Warp


Post a reply to this message

From: GP70
Subject: Re: MegaPOV 1.2.1 and reflection blur
Date: 5 Jan 2006 10:55:00
Message: <web.43bd4016e28d25494d24a2b10@news.povray.org>
Warp <war### [at] tagpovrayorg> wrote:
>   I'm afraid that's next to impossible.
>
>   The only way in a generic raytracer like povray to get accurate blurred
> reflections is to shoot many rays. There just aren't any better alternatives.
>
>   One alternative is to use an environment map. However, this technique
> has several problems:
- Warp


Yes, I fully agree with you: when I say "efficient" I have in mind something
like applying adaptive methods to shot rays like in area lights objects. I
don't know if this could be useful or not but it's an idea...

Moreover would be necessary to model the fact that normally the blur effect
is maximum when the angle between view and surface normal is minimum and
vice versa... (something like (and also related to) the min/max reflection
amount). Perhaps there is a big amount of physics to consider...

So I will try to look at real objects behaviours to trim the avarage texture
method!

GP


Post a reply to this message

From: zuegs
Subject: Re: MegaPOV 1.2.1 and reflection blur
Date: 14 Jan 2006 16:35:00
Message: <web.43c96e2be28d2549504224b0@news.povray.org>
Hi GP70, hi Warp

I tried the blur-trick and it works. At least for small blurring with
BlurAmount < 1. But if I like to do really strong blurred surfaces (big
BlurAmount ex: > 5) then the result tend to look as fully reflectiv (like
BlurAmount = 0) which seems to come from the self-reflection effect.

I tried to locate this in source code and found that if eye-vector is behind
bonzo-normal-surface then the reflection algo uses the unperturbated normal
of the object thats then looks very unblurry....

Do I something wrong? I feel that in reality there are surfaces that are
more blurred than BlurAmount=1 do... Whats about a better self-reflection?

Thanks for any comment on this, best regards

zuegs


Post a reply to this message

From: Warp
Subject: Re: MegaPOV 1.2.1 and reflection blur
Date: 14 Jan 2006 17:23:24
Message: <43c979dc@news.povray.org>
zuegs <zue### [at] bluewinch> wrote:
> I tried the blur-trick and it works. At least for small blurring with
> BlurAmount < 1. But if I like to do really strong blurred surfaces (big
> BlurAmount ex: > 5) then the result tend to look as fully reflectiv (like
> BlurAmount = 0) which seems to come from the self-reflection effect.

  Did you scale the normals very large or very small?

-- 
                                                          - Warp


Post a reply to this message

From: zuegs
Subject: Re: MegaPOV 1.2.1 and reflection blur
Date: 14 Jan 2006 18:25:00
Message: <web.43c9879ee28d2549504224b0@news.povray.org>
Warp <war### [at] tagpovrayorg> wrote:
>
>   Did you scale the normals very large or very small?
>
> --
>                                                           - Warp

Hi Warp

Many thanks for reply.
I tried large and small normals. The effect happens with flat viewing angles
(ex: at border of spheres) and looks like varnished.

In following source-code this happens on line 15 when "reflected inside rear
virtual surface, Reflect Ray using Raw_Normal". As Raw_Normal is
indipendent of blur normals the reflection looks unblurred :(

Isn't there another possibility to deal this condition... as doing same as
on line 23 -> double reflection...

Thanks for all comments
regards
zuegs

-----------
01    VDot(n,Ray->Direction, Jitter_Normal);
02    n *= -2.0;
03    VAddScaled(New_Ray.Direction, Ray->Direction, n, Jitter_Normal);
04    /* Nathan Kopp & CEY 1998 - Reflection bugfix
05      if the new ray is going the opposet direction as raw normal, we
06      need to fix it.
07      */
08    VDot(n, New_Ray.Direction, Jitter_Raw_Normal);
09    if (n < 0.0)
10    {
11      /* It needs fixing.  Which kind? */
12      VDot(n2,New_Ray.Direction,Jitter_Normal);
13      if (n2 < 0.0)
14      {
15        /* reflected inside rear virtual surface. Reflect Ray using
16 Raw_Normal */
17        VDot(n,Ray->Direction,Jitter_Raw_Normal);
18        n *= -2.0;
19        VAddScaled(New_Ray.Direction, Ray->Direction,
n,Jitter_Raw_Normal);
20      }
21      else
22      {
23        /* Double reflect NRay using Raw_Normal */
24        /*VDot(n,New_Ray.Direction,Jitter_Raw_Normal); - kept the old n
25 around */
26        n *= -2.0;
27        VAddScaledEq(New_Ray.Direction, n, Jitter_Raw_Normal);
28      }
29    }
30    VNormalizeEq(New_Ray.Direction);
-------------


Post a reply to this message

<<< Previous 2 Messages Goto Initial 10 Messages

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