void LateUpdate()
{
// accumulate idle time
if (!isCameraMoving) {
if (idleTime-Time.deltaTime < m_amountOfIdleTimeToWaitBeforeDownloadRequest &&
idleTime >= m_amountOfIdleTimeToWaitBeforeDownloadRequest
) {
MessengerAM.Send(new MessageCameraStopped());
}
idleTime += Time.deltaTime;
}
else {
idleTime = 0f;
MessengerAM.Send(new MessageCameraMoved());
}
// move the rig
m_previousPosition = m_transform.position;
m_transform.position = Vector3.Lerp(m_transform.position, desiredPosition, m_damping*Time.deltaTime);
// zoom in and out
m_mainTransform.localPosition = Vector3.Lerp(m_mainTransform.localPosition, m_mainTransform.localPosition.normalized*m_desiredCameraDistance, m_damping*Time.deltaTime);
}