POV-Ray : Newsgroups : povray.text.scene-files : Refraction bug(?) this time : Refraction quirk(!) test scene Server Time
29 Jul 2024 06:21:41 EDT (-0400)
  Refraction quirk(!) test scene  
From: =Bob
Date: 5 Dec 1998 05:02:52
Message: <366904cc.0@news.povray.org>
As you may have already guessed I'm determined to show everyone this 
supposedly *normal* behaviour of refractive planes (and blobs, and ?) that 
some other primitives do not exhibit.
Please do try this test scene out and see for yourselves what I'm talking 
about. I've made it easy to test several basic primitives out.
Although, I am quite convinced (with the help of a brave few) that the plane 
is doing the correct thing according to what you would expect of it when 
inversing its properties.

// Refraction bug?
// refraction seems to jump into an external object.
// which itself does not have an ior (no csg used).
// only the plane and blob do this, others checked here do not.
// 98.92, bob hughes

// when 1 (inverse used) refraction jumps into sphere, 2 does not
#declare RB = 1;  //use 1 or 2

// 1=plane, 2=disc, 3=sphere, 4=cylinder, 5=cone, 6=box, 7=blob
#declare Primitive = 7;

// test scene below here
light_source { 0*x color rgb 1 }
camera {location <0,4,-9> look_at <0,3,0>}

// "invisible" sphere (no refraction used)
sphere {0,3
  hollow on
 pigment {rgbf<1,1,1,1>} normal {wrinkles .1}
  finish {ambient .1 diffuse .6 reflection 0 reflection_exponent 0}
 translate 3*y
}

// strange plane and blob (refraction can jump into sphere)
// these have a surface coinciding with near-center of the "invisible" sphere
#switch (Primitive)
#case (1)
plane {y,3
#break
#case (2)
disc {<0,3,0>,<0,1,0>,6
#break
#case (3)
sphere {<0,-3,0>,6
#break
#case (4)
cylinder {-3*y,3*y,6
#break
#case (5)
cone {-3*y,9,3*y,0
#break
#case (6)
box {<-3,-3,-3>,<3,3,3,>
#break
#case (7)  //single or multiple blob components have same effect
blob {threshold .33 sphere {<0,-3,0>,9,1} //sphere {<0,0,0>,4,1}
#break
#end

 hollow on
 texture {pigment {rgbf <1,1,1,.5>}
  normal {wrinkles .5 turbulence .5 triangle_wave}
   finish {phong 1 phong_size 100
//please note that reflection is turned off completely
   reflection 0 //reflection_exponent 1
   }
  }
 
 interior {ior 1.23} //some refraction for test primitives

#switch (RB)
 #case (1)
   inverse  // the culprit? or is it simply a refraction bug alone
 #break
 #case (2)
   //no inverse used
 #end
}

// base plane
plane {y,0 hollow on
 texture {pigment {rgb<.5,1,.5>}
  finish {ambient .3 diffuse .9}}
}

sky_sphere	// evening
{
  pigment
  {
    gradient y
color_map { [0.0 color rgb<0.9,0.5,0.475>] [1.0 color rgb<0.2,0.45,0.65>] }
  }
}
//END

-- 
 omniVERSE: beyond the universe
  http://members.aol.com/inversez/POVring.html
=Bob


Post a reply to this message

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