POV-Ray

The Persistence of Vision Raytracer (POV-Ray).

This is the legacy Bug Tracking System for the POV-Ray project. Bugs listed here are being migrated to our github issue tracker. Please refer to that for new reports or updates to existing ones on this system.

Tasklist

FS#93 - Photons are unnaturally amplified by pass_through objects

Attached to Project: POV-Ray
Opened by Christoph Lipka (clipka) - Friday, 02 April 2010, 15:16 GMT
Last edited by Christoph Lipka (clipka) - Thursday, 25 August 2011, 18:24 GMT
Task Type Definite Bug
Category Backend → Photons
Status Closed
Assigned To Christoph Lipka (clipka)
Operating System All
Severity Medium
Priority Normal
Reported Version 3.70 beta 36
Due in Version 3.70 release
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

The following scene shows how photons are “boosted” by pass_through objects; removing one of the boxes will reduce the effect; the effect can be seen with 3.6 as well as current betas:

global_settings {
  max_trace_level 10 // makes a difference!
  photons { spacing 0.02 }
}

camera {
  right x*image_width/image_height
  location  <0,2.6,-10>
  look_at   <0,0.75,0>
}

light_source {
  <500,500,150>
  color rgb 1.3
  photons {
    refraction on
    reflection on
  }
}

sky_sphere {
  pigment {
    gradient y
    color_map {
      [0.0 rgb <0.6,0.7,1.0>]
      [0.7 rgb <0.0,0.1,0.8>]
    }
  }
}

plane {
  y, 0
  texture { pigment { color rgb <1.0, 0.8, 0.6> } }
}

#declare M_Glass=
material {
  texture {
    pigment {rgbt 1}
    finish {
      ambient 0.0
      diffuse 0.05
      specular 0.6
      roughness 0.005
      reflection { 0.1, 1.0 fresnel on }
      conserve_energy
    }
  }
  interior {
    ior 1.5
    fade_power 1001
    fade_distance 0.9
    fade_color <0.5,0.8,0.6>
  }
}


sphere {
  <1.1,1,-1.3>, 1
  material { M_Glass }
  photons {
    target 1.0
    refraction on
    reflection on
  }
}

cylinder {
  <-1.2,0.01,0.8>, <-1.2,2.5,0.8>, 1
  material { M_Glass }
  photons {  // photon block for an object
    target 1.0
    refraction on
    reflection on
  }
}

box {
  <2.4,0,-2.3>, <2.6,4,-0.3>
  material { M_Glass }
  photons { pass_through }
}

box {
  <2.9,0,-2.3>, <3.1,4,-0.3>
  material { M_Glass }
  photons { pass_through }
}
This task depends upon

Closed by  Christoph Lipka (clipka)
Thursday, 25 August 2011, 18:24 GMT
Reason for closing:  Fixed
Comment by Christoph Lipka (clipka) - Friday, 02 April 2010, 19:57 GMT

Analysis revealed that pass_through objects currently cause photons to be "cloned", with one copy being transmitted unchanged (i.e. as if the object wasn't there) and the other copy being subject to refraction.

Comment by Christoph Lipka (clipka) - Wednesday, 14 April 2010, 22:18 GMT
  • Field changed: Status (Investigating → Requires testing)
  • Field changed: Percent Complete (30% → 80%)

preliminary fix provided with change #4939.

NOTE: As the error is also present in POV-Ray 3.6, behavior has necessarily changed with this fix; pass_through objects will now affect the color of photons on their way to their target, according to pigment filter/transmit, interior fade, and media (which implies that opaque objects will block photons even when declared pass_through); it needs to be seen whether this new behavior will be accepted by the users, or whether some additional mechanism will have to be implemented to choose between old and new behavior for compatibility with legacy scenes. At present, behavior can only be changed at compile time with the preprocessor defines PT_FILTER_BEFORE_TARGET and PT_AMPLIFY_BUG in photons.cpp.

Comment by Thorsten Fröhlich (thorsten) - Tuesday, 23 August 2011, 06:15 GMT

What is the status of this bug?

Comment by Christoph Lipka (clipka) - Thursday, 25 August 2011, 17:20 GMT
What is the status of this bug?
As I mentioned a while ago:
it needs to be seen whether this new behavior will be accepted by the users, or whether some additional mechanism will have to be implemented to choose between old and new behavior for compatibility with legacy scenes.

That was in April 2010; since then, I haven't heard any complaints.

Comment by Thorsten Fröhlich (thorsten) - Thursday, 25 August 2011, 17:24 GMT

Hmm, sounds like we can close this bug then? Certainly the new behavior sounds fine to me.

Loading...