01. 첫 번째 수업: 브레이크 밟는 순간, 1차원 직선 운동 (1D Motion)

게임에서 플레이어 캐릭터가 좌우(X축) 일직선상으로 전진과 후진을 반복하는 “수직 1D 액션 파이프라인” 을 하나 설계합니다.

  • 위치 함수 (Position): $\mathbf{x(t) = t^3 - 6t^2 + 9t}$

캐릭터의 발자취가 시간 $t$ 초 단위 포맷에 따라 우측(+) 으로 갔다가 좌측(-) 으로 갔다가 와리가리 춤을 춥니다. 이제 컴퓨터가 미분 해킹 모듈로 묻습니다. “야. 이 캐릭터가 미친 듯이 전진(+ 속도) 하다가 $\to$ 갑자기 방향을 휙 틀어서 후진(- 속도 역주행) 으로 꺾어 달리는 타임라인 분기점(운동 방향이 180도 전환 터지는 그 찰나!) 이 언제냐? 초시계 $t$ 의 정답을 불어라!”


1. 스피드 해킹: 속도 $v(t)$ 센서 가동

위치 함수로는 역주행 여부를 알 수 없습니다! 방향과 전진/후진 기어 상태를 알고 싶으면, 오리지널 $x(t)$ 를 무조건 믹서기에 넣고 갈아서 $\mathbf{v(t)}$ 스피드 자판기로 바꿔야 합니다.

$x(t) = t^3 - 6t^2 + 9t$ $\downarrow$ 미분 diff(x_t, t) 타격! $\downarrow$ $\mathbf{v(t) = 3t^2 - 12t + 9}$

이것이 현재 나의 스피드 계기판(도함수) 입니다.

SVG 애니메이션: 가장 위에는 포물선(위치 곡선) 이 오르다 내리고, 그 바로 아래 같은 타임라인에 기울기 일직선(속도 곡선) 이 제로 v=0 을 돌파하는 싱크로 렌더링 물리 지표.

2. 방향 전환의 버그 스팟: $\mathbf{v(t) = 0}$

전진 기어(+) 에서 후진 기어(-) 로 변속 레버를 손으로 확 잡아 당기려면? 반드시 기어가 가운데 ‘중립 N단 (스피드 Zero = 0)’ 위치를 덜컥 밟고 건너뛰어야 합니다. 자동차가 마찰력 없이 허공에 핑그르르 돌아서 후진을 갈길 수는 없습니다! 즉 바퀴가 스톱(Stop) 하는 $v(t) = 0$ 찰나의 순간이 운동방향의 변곡점 앵커가 됩니다!

  • $v(t) = 3(t^2 - 4t + 3) = 0$
  • $3(t - 1)(t - 3) = 0$

[해킹 결과 도출] “찾았다! 타임라인 $t = 1$호$t = 3$초 일 때, 이 미친 캐릭터의 엔진 스피드 바늘이 $\mathbf{0}$ 초가 딱 터지는구만!”

3. 부호 이펙트 폭파 점검

도출해 낸 1초와 3초 구간 전후로, 스피드 $v(t)$ 수치가 플러스(+) 였는지 마이너스(-) 로 꺾이는지 부호를 체크해 봅시다.

  1. $t=0$ 일 때 (출발시점): $v(0) = +9$ (오른쪽으로 우당탕탕 전진 중!)
  2. $t=1$ 일 때: 속도가 $0$ 으로 훅! 정차! (앞으로 가다 콱 브레이크 밟음!)
  3. $t=2$ 일 때: $v(2) = 3(4) - 12(2) + 9 = -3$ 음수! (이런! 뒤로 꺾어서 후진을 밟기 시작했다!)
  4. $t=3$ 일 때: 다시 속도가 $0$ 으로 훅! 정차! (이번엔 후진 밟다가 뒤로 브레이크 밟아 멈춤!)
  5. $t=4$ 일 때: $v(4) = 3(16) - 48 + 9 = +9$ 양수! 다시 오른쪽 무식한 폭주 전진 재개!

위치 데이터를 던져주고 $\to$ 미분 속도값을 풀어해쳐 $\to$ 언제 이 녀석이 앞뒤로 허세 방향전환(턴) 무빙을 치는지 시뮬레이션 데이터를 $100\%$ 완벽 복원해 낸 것입니다! 이 1차원 운동 스캔 코드를 장착했다면, 다음 장에서는 가장 헷갈리는 초보자들의 살상 코드 ‘속도’ 와 ‘속력’ 의 개념 포맷 차이를 뜯어 고쳐보겠습니다.

서브목차