povray

Light travels through glass in POVRay?


In this image I have placed light sources directly above and to the left of glass tubes with an index of 1.3. But I do not see any of the expected artifacts (evidence) that light is traveling through the tubes and reflecting off the checkerboard surface.

enter image description here

I have seen plenty of POVRay images where light is manipulated by glass. But I am at a loss as to which parameter or combination of parameters effects this. Here is the POV file which renders the above image:

//EXAMPLE OF TRANSPARENT OBJECTS

//Files with predefined colors and textures
#include "colors.inc"
#include "glass.inc"
#include "golds.inc"
#include "metals.inc"
#include "stones.inc"
#include "woods.inc"

//Place the camera
camera {
  sky <0,0,1>          //Don't change this
  direction <-1,0,0>   //Don't change this  
  right <-4/3,0,0>     //Don't change this
  location  <100,0,50>  //Camera location
  look_at   <0,0,.5>    //Where camera is pointing
  angle 3       //Angle of the view--increase to see more, decrease to see less
}

//Ambient light to "brighten up" darker pictures
global_settings { ambient_light White*0.2

  assumed_gamma 1.0
  max_trace_level 10
  photons {
    spacing 0.05
    autostop 0
    jitter 0
  }
  adc_bailout 0
}

//Place a light--you can have more than one!
light_source { 
  <0,-2,2.2>   //Change this if you want to put the light at a different point
  color White*2        //Multiplying by 2 doubles the brightness
    spotlight
    radius 5
    falloff 20
    tightness 10 
    point_at <0, -2, 0>
}

//Place a light--you can have more than one!
light_source {
  <0,-.2,.1>
  color White * 2        //Multiplying by 2 doubles the brightness
    spotlight
    radius 5
    point_at <0, 0, 0>
}

//Set a background color
background { color White }

//Create a "floor"
plane {
  <0,0,1>, 0           //This represents the plane 0x+0y+z=0
  pigment {
    checker color White, color Gray
  }

photons{
  target
  reflection on
  refraction on
  }
}

 cylinder
 { <0,-2,.2>, <0,-2,2>,  .2
  texture{T_Glass1}
  interior { ior 1.3}
  photons
  {
   reflection on
   refraction on
  }
 }

cylinder
{ <-0,0,0.2>, <0,2,0.2>,  .2
 texture{T_Glass1}
 interior { ior 1.3}
 photons
 {
  reflection on
  refraction on
 }
}

Any hints or pointers appreciated.


Solution

  • To allow light to pass through objects such as the cylinders in the above POVRay script, I needed to add "target".

    That is, changed this:

     cylinder
     { <0,-2,.2>, <0,-2,2>,  .2
      pigment{Col_Glass_Clear}
      interior { ior 1.3}
      photons
      {
       reflection on
       refraction on
      }
     }
    

    To this:

     cylinder
     { <0,-2,.2>, <0,-2,2>,  .2
      pigment{Col_Glass_Clear}
      interior { ior 1.3}
      photons
      {
       target
       reflection on
       refraction on
      }
     }
    

    Then when POVRay is run the output image changes to the following:

    enter image description here