|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
It seems a ray traced (from the camera) through the transparent object
(entering and then exiting) and hitting a diffuse surface is treated
differently than one that hits the surface directly when considering
"radiosity".
Initially, I thought the cause had to do with media interaction, but after
commenting out the 'interior' and 'media' and 'hollow', I found the problem
still exists. Translating the 'box' along the 'y-axis' confirms that the
problem only occurs when the primary camera ray first passes through the
box before hitting a diffuse surface. Moving the right along the x-axis
also visualizes the problem.
Is this a known bug, or Is there a setting in the scene language that could
fix this???
* See 'povray.text.scene-files' (with subject "Radiosity and Media Bug???")
for image rendered using my version of POV-Ray v3.6, where the bounds of
the media box container is visualized.
Below is the scene file:
#include "colors.inc"
global_settings
{
assumed_gamma 1.0
max_trace_level 5
noise_generator 3
#if(1)
radiosity
{
media on
count 32
recursion_limit 3
nearest_count 10
error_bound 0.5
}
#end
}
background { color White }
//----------------------------------------------
// CAMERA
//----------------------------------------------
camera {
location <2, 4, 12>
look_at <0,1, 0>
up <0,1,0>
angle 60
}
//----------------------------------------------
// Media
//----------------------------------------------
box {
<0,0,0>, <1,1,1>
texture {
pigment {color rgbf 1}
}
#if(0)
interior {
media {
scattering { 1, rgb 0.2}
intervals 1
samples 20
method 3
}
}
hollow
#end
scale <6,6,6>
translate <-2,.3,0>
}
//----------------------------------------------
// GROUND
//----------------------------------------------
object {
isosurface {
function {y}
contained_by {box {<-100,-3,-100>, < 100, 1, 100>}}
texture {
finish {
ambient 0.0
diffuse 1.0
specular 0.0
}
pigment { color rgb <1,1,1> }
}
}
hollow
}
//----------------------------------------------
// WALL
//----------------------------------------------
box { <-2.0, -0.2, -2.0>, <2.0, 0.2, 2.0>
finish {
ambient 0.0
diffuse 0.9
}
pigment { color rgb <1,1,1> }
scale 5
rotate <0, 0, -90>
translate <-4,5,0>
}
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
anson chu wrote:
> It seems a ray traced (from the camera) through the transparent object
> (entering and then exiting) and hitting a diffuse surface is treated
> differently than one that hits the surface directly when considering
> "radiosity".
Your max_trace_level simply is not high enough, radiosity rays increase
the trace level like other rays and if they reach max_trace_level no
more rays are sent.
Christoph
--
POV-Ray tutorials, include files, Sim-POV,
HCR-Edit and more: http://www.tu-bs.de/~y0013390/
Last updated 06 Jul. 2004 _____./\/^>_*_<^\/\.______
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> Your max_trace_level simply is not high enough, radiosity rays increase
> the trace level like other rays and if they reach max_trace_level no
> more rays are sent.
Great! That fixed it. Thanks Christoph.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Christoph Hormann <chr### [at] gmxde> wrote:
> anson chu wrote:
> > It seems a ray traced (from the camera) through the transparent object
> > (entering and then exiting) and hitting a diffuse surface is treated
> > differently than one that hits the surface directly when considering
> > "radiosity".
>
> Your max_trace_level simply is not high enough, radiosity rays increase
> the trace level like other rays and if they reach max_trace_level no
> more rays are sent.
Actually, this isn't quite complete. If the ray reaches the minimum of
recursion_limit or max_trace_level then no more rays are sent.
The scene file I'm appending shows this effect.
>
> Christoph
>
> --
> POV-Ray tutorials, include files, Sim-POV,
> HCR-Edit and more: http://www.tu-bs.de/~y0013390/
> Last updated 06 Jul. 2004 _____.//^>_*_<^/.______
Bye for now,
Mike Andrews.
// --- radtrans.pov ---
// Radiosity and transparent surfaces
// the only change in each frame is the recursion limit
// run with the following command line:
// +w160 +h120 -a +kff5
global_settings {
max_trace_level 100
assumed_gamma 1
ambient_light 1
radiosity {
pretrace_start 1
pretrace_end 1
count 100
nearest_count 10
error_bound 0.2
recursion_limit max(frame_number,1)
low_error_factor 0.01
gray_threshold 0.0
minimum_reuse 1e-4
brightness 1
adc_bailout 1e-10
media on
}
}
camera {
ultra_wide_angle location y-z*10
look_at <0,-0.8,-1> angle 35
}
box { -<20,5,20>,<20,-2,20>
pigment { rgb <.9,.85,.75> }
finish { diffuse 0.8 ambient 0 }
}
// light source - ambient
sphere { <1,0.5,1>, 0.5
pigment { rgb 10*<1,.03,.05> }
finish { ambient 1 diffuse 0 }
}
// light source - media, one extra transparent surface
sphere { <-1,0.5,1>, 0.5
pigment { rgbf 1 }
finish { ambient 0 diffuse 0 }
interior {
media {
emission rgb 10*<.03,1,.05>
samples 1,1 intervals 1 confidence .1
}
}
hollow
}
// simple refractive sphere - two transparent surfaces
sphere { 0, 0.8 translate <-1,-1.2,-1>
pigment { rgbf 1 }
finish { diffuse 0.1 ambient 0
reflection {1 fresnel on}
conserve_energy
}
interior { ior 1.4 }
}
// double refractive sphere - four transparent surfaces
union {
sphere { 0, 0.8
pigment { rgbf 1 }
finish { diffuse 0.1 ambient 0
reflection {1 fresnel on}
conserve_energy
}
interior { ior 1.25 }
}
sphere { 0, 0.7
pigment { rgbf 1 }
finish { diffuse 0 ambient 0 }
interior { ior 1.4 }
}
translate <1,-1.2,-1>
}
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|