유니티는 함수의 실행 순서가 정해져 있으며 그에 따라 호출해야 하는 위치가 변경됩니다.
Update() 함수는 프레임마다 호출하는 함수로, 시간 및 횟수가 불규칙합니다. 왜냐하면 기기의 성능에 따라 갱신 여부(t)가 달리질 수 있기 때문입니다.

빠른속도의 총알이 갱신 주기 사이에 Collider를 갖고 있는 객체를 지나가 버리면 tigger가 작동하지 않습니다.
Rigidbody의 Collision Detection 모드를 Continuous Dynamic으로 설정
이 모드는 연속 충돌 감지를 활성화 하여 터널링을 감소시킬수 있습니다.
그러나 이 모드는 연산 비용이 높아질수 있으므로 성능에 영향을 줄 수 있으므로 꼭 필요한 객채에만 설정해야 합니다.
프레임당 충돌 체크 간격을 줄이는 것도 터널링을 완화하는 데 도움이 될 수 있습니다. 유니티에서는 Time.fixedDeltaTime(기본 0.02) 값을 조정하여 충돌 체크 간격을 조절할 수 있습니다.
콜라이더의 크기와 형태를 조정하여 물체 간의 겹침을 최소화할 수 있습니다.
충돌 감지를 위해 콜라이더를 더 작게 만들거나, 충돌이 예상되는 부분을 더 상세하게 나타내는 복합 콜라이더를 사용할 수 있습니다.
플레이어 RigidBody의 속도를 제한하는 것도 터널링을 줄일 수 있는 방법입니다. 일반적으로 높은 속도를 움직이는 객체일수록 터널링이 더 자주 발생할 수 있으므로, 적절한 속도 제한을 설정하여 문제를 완하할 수 있습니다.
LastUpdate()는 마지막 결과물만 화면에 잡고 싶을 때 사용한다.
캐릭터를 따라다니는 카메라 기능을 적용할 때 캐릭터 이동 및 물리 효과가 끝났을 때를 그린다.
즉, 여러 요인을 고려해서 프레임 안에 움직여야 할 오브젝트들이 다 움직인 후 최종 화면을 구현합니다.