POV-Ray : Newsgroups : povray.general : black dots appear on high ior, translucent egg crate patterned box : black dots appear on high ior, translucent egg crate patterned box Server Time
30 Jul 2024 16:27:48 EDT (-0400)
  black dots appear on high ior, translucent egg crate patterned box  
From: Mike
Date: 15 Oct 2008 16:10:01
Message: <web.48f64c974af29eecc9b9f9f00@news.povray.org>
I have been trying to get a section basically a cube where the top and bottom
surfaces are an egg crate pattern.  The inner material is a liquid with a high
ior.  I managed to get the pattern to work with isosurfaces getting help
already from this forum.  It seems that black dots are appearing though.
Actually, I notice that if I lower the refractive index of my material the
black dots go away, so it definitely is a total internal reflection thing.  I
guess the light reflects back and forth so many times it either blows out the
max_trace_level or the adc_bailout. It seems that by turning off adc_bailout
(seting equal to 0 ) and messing with the max_trace_level I can make less black
dots appear, but only if I turn adc_bailout off. However, I have yet to be
able to make max_trace_level equal to 255 with adc_bailout off because it takes
too long to render.  Maybe I do not fully understand how adc_bailout works, it
seems if I make it really small I get no change from if I have it not there at
all (the default value).  Any ideas?

Also, I have added a patch to the source code from:
http://www.triplespark.net/render/povray/patches/isoacc-patch/
This does not get rid of the dots, but seems to speed up the processing a bit; I
guess it uses a better root finding algorithm in isosurface.cpp then the one
built into povray.

I have attached my code below if anyone wants to check it out.
Thanks,
Mike

#include "colors.inc"
#include "textures.inc"

global_settings{
    //ambient_light rgb<1, 1, 1>
    //assumed_gamma 1
    max_trace_level 20
  //photons {
   //    count 300000
    //  autostop 0
     //  jitter .4
  // }
    //adc_bailout 0.0020
  adc_bailout 0
}

camera {
    location  <-4, 8, 10>
    look_at   <0, 4, 0>
    angle 20
  }
#declare MixedRegion =
material {
   texture {
     pigment {
        color rgbf<0.3, 0.5, .5,1>
      }

 finish {
        ambient 0.0
        diffuse 0.0
         reflection {
          0.0, 1.0
          fresnel on
        }
        conserve_energy
        specular 0.0
        roughness 0.0
 }
  }
  }


#declare F = function { ( y-0 - .1*sin(3*6.2832*x)*sin(3*6.2832*z) )  }

#declare Mixingregion2=
isosurface{
function {abs(F(x,y,z)  ) -.5}
     max_gradient 2.3
     //max_trace 500
     all_intersections
     accuracy .0001
 contained_by { box { <-1.8999, -.6, -1.8999>, <1.8999, .6, 1.8999> } }
material { MixedRegion }
     //media{
      //intervals 10
      //samples 10
     //}
     interior {
    ior 1.5
    //media{
      //intervals 100
      //samples 100
     //}

}
 photons{
                target
                refraction on
               reflection on
  }
 //rotate 180*z
translate 3*y
//translate 2*x
}


object{Mixingregion2}

  light_source {
    <20, 20, 20>
    color White
    photons{

                refraction on
                reflection on
  }
  }
plane{y,0 texture{pigment{White}finish{ambient 0 diffuse 1}}}


Post a reply to this message

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