POV-Ray : Newsgroups : povray.newusers : Photons, saturation and using the photon map outside povray : Photons, saturation and using the photon map outside povray Server Time
2 Jul 2024 12:00:33 EDT (-0400)
  Photons, saturation and using the photon map outside povray  
From: Ali
Date: 27 May 2011 13:10:01
Message: <web.4ddfda916d6777ce76ac49870@news.povray.org>
Dear all,

I'm using povray to model the focusing and retro-reflection of glass
microspheres, so a pretty simple set up really. The problem that I am having is
that the areas where the photon density is high and the situations where the
spheres are re-imaging the light source at the camera (i.e the plane is near the
focal point of the shperical lens and the camera and light source are on the
same axis) the image saturates completely.

Two questions. 1./ Can the levels of the image be scaled to use the high
brightness areas from the photon regions?

2./ Are there any programs to extract the data from the photon map for analysis
elsewhere?

Below is a simple scene to demonstrate the saturation
// ----------------- Includes and declarations -------------------------------
#include "colors.inc"
#include "textures.inc"

#declare AMBILIGHT = 0.1;

// ---------------- Global Settings -----------------------------------

global_settings {
                photons {
                        //count 2000000
                        //radius 10
                        spacing 0.01
                        autostop off
                        jitter 0.4
                        save_file "photon map.ph"
                        //load_file "photon map.ph"
                        adc_bailout 0.0000153
                        max_trace_level 10
                        }


                 }


// ---------------- Cameras --------------------------------------------

#declare cam1 = camera { orthographic
                         location <5, 10, 0 >   //camera should be placed above
the origin 5 units//
                         look_at  <5, 0, 0>
                         sky y   //looking back at the origin
                         //right <1.33, 0, 0>
                         //angle 10

                         }

camera {cam1}


// ------------------   Light Sources ----------------------------//

#declare light1 = light_source { <10, 3, 0>

        colour White*1   //light source colour and power

        //area_light  <0,1,0>, <0,0,1>, 3, 3     //area light

        cylinder
        radius 2
        falloff 2.2

        parallel    // All rays are launched parallel

        point_at <5, 0, 0>    // position vector that light rays are launched at

        photons{
        reflection on
        refraction on
        }
        }

#declare light2 = light_source { <4, 5, 0>

        colour <0.4,0.6,0.8>*0.1   //light source colour and power

        //area_light  <0,1,0>, <0,0,1>, 3, 3     //area light

        cylinder
        radius 5
        falloff 5.1

        parallel    // All rays are launched parallel

        point_at <4, 0, 0>    // position vector that light rays are launched at

        photons{
        reflection on
        refraction on
        }
        }


light_source {light1}

light_source {light2}

// ------------------   Objects -------------------------//

plane { y, 0
 texture { pigment { rgb <0.5, 0.5, 0.7> } }

 photons{
         reflection on
         collect on
         }

 finish { diffuse 1.0
         specular 0.0
         ambient 0.0
        }
       }

  #declare Sradius = 0.5;
  sphere {<0,Sradius,0>, Sradius
          texture { pigment { rgbt 1 }
                   }

          interior {
                ior 1.8
                }

          finish{ ambient AMBILIGHT
                diffuse 0
                reflection {0, 1.0
                fresnel on}
                conserve_energy
                }


          photons { target 1.0
                refraction on
                reflection on
                collect off
                }


          translate <4.5,0,0>
                }

  #declare Sradius2 = 1;
  sphere {<0,Sradius2,0>, Sradius2

          texture { pigment { rgbt 1 }
                   }

          interior {
                ior 1.5
                }

          finish{ ambient AMBILIGHT
                diffuse 0
                reflection {0, 1.0
                fresnel on}
                conserve_energy
                }


          photons { target 1.0
                refraction on
                reflection on
                collect off
                }


          translate <5.5,0.0,2>
                }


Post a reply to this message

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