 
   // compute origin of the ray
   float3 origin = camera.position;
-  /*
   if (camera.aperture_radius > kEpsilon) {
     // generate a random point on the aperture
     float angle = kTwoPi * curand_uniform(curand_state);


    origin += x_axis * coord.x + y_axis * coord.y;
  }
  */

  rays[idx].origin = origin;
  rays[idx].direction = normalize(point - origin);
}

    RayCastFromCameraKernel<<<grid_dim, block_dim>>>(camera, rays_ptr,
                                                     curand_states_ptr);

    std::cout << "\t" << std::flush;
    for (size_t depth = 0; depth < m_parameter.max_trace_depth; depth++) {
      std::cout << "." << std::flush;
