 	cudaTextureObject_t vtxNml,
 	const aten::mat4* __restrict__ matrices,
 	cudaTextureObject_t* textures,
-	const unsigned int* random)
+	const unsigned int* random,
+	idaten::PathTracing::ShadowRay* shadowRays)
 {
 	int idx = blockIdx.x * blockDim.x + threadIdx.x;
 

					// inifinite light ̏ꍇ́AɂȂApdfLightɊ܂܂鋗ƑłH.
					// ił̂ŁApdfLightɂ͋͊܂łȂj.
					auto misW = pdfLight / (pdfb + pdfLight);
					path.contrib += (misW * bsdf * emit * cosShadow / pdfLight) / lightSelectPdf;
				}
			}
			else {

			isectTmp.t,
			hitobj);

		if (isHit)
#endif
		{
			auto cosShadow = dot(orienting_normal, dirToLight);

			real pdfb = samplePDF(&ctxt, &mtrl, orienting_normal, ray.dir, dirToLight, rec.u, rec.v);
