POV-Ray : Newsgroups : povray.unofficial.patches : ANNOUNCE: Stochastic Radiosity Patch for PoV 3.1g : Re: ANNOUNCE: Stochastic Radiosity Patch for PoV 3.1g Server Time
2 Sep 2024 04:14:37 EDT (-0400)
  Re: ANNOUNCE: Stochastic Radiosity Patch for PoV 3.1g  
From: Warp
Date: 27 May 2000 15:30:35
Message: <3930225b@news.povray.org>
Stephane Marty <alb### [at] wanadoofr> wrote:
: This technique is a bit
: different than the monte carlo technique already existant in PoV, but it
: gives pretty nice, more "radiosity-esque" and interesting results.  In
: fact, the effect of inter-diffuse reflection is much more realistic and
: distinctly visible.

  I'm sorry to disagree a bit with you (and apparently everyone else).

  Ok, ok, my opinion is based solely on the example image on the mentioned
page, but I supposed that it was a good comparison image since that's the
purpose of it.
  Yes the "color bleeding" effect is more noticeable in the right-hand side
image. However, I wouldn't say that it's more realistic. Actually it looks
more like an overexposed photograph.
  I tried to recreate your example scene and try a bit the megapov radiosity
options. Actually the default options cited in the documentation worked
very well. I, however, rised up the brightness to get a more visible color
bleeding.
  Still I like the megapov image more. The result is extremely smooth precise.
The example image made with your patch looks a bit grainy (or am I imagining
things?).
  Ok, I'm sure that a very similar image can be made with your patch
by tweaking the parameters, but I remember seeing a post by you which
contained comparison render times of megapov and your patch and if I
remeber correctly megapov was considerably faster.

  My opinion is that the radiosity in MegaPov is very good.

  The image (512x386 +a0.1) can be seen at:

http://www.cs.tut.fi/~warp/radtest.jpg

  The rendering time in this Sun Ultra 5 was 9 minutes 40 seconds.

  The source code follows:

#version Unofficial MegaPov 0.5;

global_settings
{ ini_option "+QR"
  ambient_light .01
  radiosity
  { pretrace_start 0.08
    pretrace_end   0.02
    count 80
    nearest_count 5
    error_bound 1
    recursion_limit 4
    low_error_factor .5
    gray_threshold 0.0
    minimum_reuse 0.015
    brightness 1.7
    adc_bailout 0.01/2
  }
}

camera { location -z*11.9 look_at 0 angle 60 }
light_source
{ 0, 1
  looks_like
  { box { <-1,0,-1><1,.4,1> pigment { rgb 1 } finish { ambient 100 } }
  }
  translate y*3.6
}


#macro Wall(Color1, Color2)
  box
  { <-4,-4,0><4,4,.1>
    pigment
    { boxed color_map
      { [0 Color1][.1 Color1][.1 Color2][.2 Color2][.2 Color1][1 Color1]
      }
      translate <1,1,0>
      warp { repeat x*2 }
      warp { repeat y*2 }
    }
  }
#end

object { Wall(rgb 1, rgb .8) translate z*4 }
object { Wall(rgb 1, rgb .8) rotate y*180 translate -z*12 }
object { Wall(rgb x, rgb x*.8) rotate -y*90 translate -x*4 }
object { Wall(rgb x, rgb x*.8) rotate -y*90 translate -x*4-z*8 }
object { Wall(rgb z, rgb <.3,.3,.8>) rotate y*90 translate x*4 }
object { Wall(rgb z, rgb <.3,.3,.8>) rotate y*90 translate x*4-z*8 }
object { Wall(rgb x+y, rgb (x+y)*.8) rotate -x*90 translate y*4 }
object { Wall(rgb x+y, rgb (x+y)*.8) rotate -x*90 translate y*4-z*8 }
box { <-4,-4,-12><4,-4.1,4> pigment { checker rgb 1, rgb .2 scale .5 } }

box { -1,1 pigment { rgb x+y } rotate y*30 translate <-1.5,-3,-1> }
sphere { <-1.8,-.5,0>, .9 pigment { rgb 1 } finish { specular .3 } }
cylinder
{ 0, y, 1 pigment { rgb <1,.8,.6> }
  rotate z*70 rotate y*-20 translate <2.5,-2.5,-1>
}

union
{ torus
  { 1.2, .5
    pigment { rgbf <1,1,1,.95> }
    finish { specular .5 roughness .02 reflection .2 }
    interior { ior 1.5 }
  }
  cone
  { 0, .7, y*2.5, 0 pigment { rgb y+z } finish { specular .2 }
  }
  rotate z*65 rotate y*-40 translate <1,-1,2>
}


-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

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