floattAbsorbtionInOctaveBands[iNumberOfFreqBands]={0.03f,0.03f,0.05f,0.05f,0.08f,0.09f,0.10f,0.12f,0.21f,0.24f};// examplary hard coded absorbtion coefficients in octave bands
// Initialize variables
floattAbsorbtionOfFace=0.9f;//@todo: dynamic addaption of absorbtion according to material
// Proceed with next ray if energy of every freq band is below threshold
if(bTotalEnergyOfBandsBelowThreshold)
break;
// reflect ray on face
assert(pMesh->has_face_normals());
CITAMesh::Normalnormal(pMesh->normal(hFace));
constVistaVector3Dv3FaceNormal(normal.data());
VistaVector3DvPerpendicularDirComponent=rRay.GetDir().Dot(v3FaceNormal)*v3FaceNormal;// direction component of incident ray perpendicular to reflection face