LabHub
배우기 러닝패스 코스

물리 엔진의 뼈대 · 충돌 반응 · 실습

충격량·반발·마찰

LabHub 에서 이어서 보기

목표

충격량으로 충돌 반응을 계산하고, 반발 계수와 마찰이 무엇을 정하는지 숫자와 그림으로 확인합니다. 이 실습이 끝나면 물리 엔진의 반응 층을 직접 만들 수 있게 됩니다.

왜 중요한가

단단한 물체의 접촉 시간은 1밀리초도 되지 않아서, 60분의 1초로 도는 시뮬레이션에서는 접촉 과정을 흉내 낼 수 없습니다. 그래서 물리 엔진은 과정을 건너뛰고 결과만 계산합니다. 충돌 전후의 속도 관계를 방정식으로 세우고, 그것을 만족하는 속도 변화량을 한 번에 구해 적용합니다.

여기서 배워 둘 관례가 둘 있습니다. 하나는 역질량을 저장하는 것입니다. 움직이지 않는 물체를 역질량 0 으로 두면 특수 처리 없이 같은 식이 그대로 돕니다. 다른 하나는 멀어지는 중이면 손대지 않는 것입니다. 이 검사를 빠뜨리면 떨어지려는 물체를 다시 잡아당겨 표면에 달라붙습니다.

단계

1. /root/impulse 에 도구 상자를 놓습니다.
2. /root/impulse/impulse.py — 충격량 공식.
3. /root/impulse/out/03-conserve.txt — 운동량과 에너지.
4. /root/impulse/out/bounce.csv, 04-bounce.txt, bounce.png — 튀는 높이.
5. /root/impulse/out/05-friction.txt — 미끄러지는 상자.
6. /root/impulse/out/06-tangent.txt — 접선 방향 마찰.
7. /root/impulse/out/balls.png07-balls.txt — 상자 안의 공 다섯 개.

참고

단계 7개

  1. 그리기 도구 상자를 놓는다
  2. 충격량 공식
  3. 무엇이 보존되고 무엇이 사라지나
  4. 튀는 높이는 e 제곱으로 줄어든다
  5. 미끄러지는 상자는 어디서 멈추나
  6. 마찰도 충격량이다
  7. 상자 안의 공 다섯 개