물체의 움직임
게임에서
물체가 움직이는 방식은 크게 2가지 방식으로 구분된다
1. 수식 변환 (행렬)
2. 물리 변환 (동역학)
수식 변환은
행렬을 통해 T(Translation), R(Rotation), S(Scaling) 변환을 일컫는다
물리 변환은
Force(힘)를 통해 위치 변환이 발생하는 것을 일컫는다
Force는 아래의 그림처럼 정의된다
위의 공식을 통해
게임에서 힘과 질량을 안다면, 가속도를 구할 수 있다 (a = F * m)
속도와 가속도
게임에서 가장 큰 핵심은
속도 및 가속도가 포함된 물체에 물리법칙을 적용해서
물체의 위치를 올바르게 갱신해서 보여주는 것이다
속도
속도의 공식은 위와 같다
일반적으로 속도를 표현할 때, '80km/h'라고 표현하는데
이는 "거리의 변화량 / 시간의 변화량"을 의미하고
일상생활에서 위의 공식을 자연스럽게 활용하고 있다
//속력 vs. 속도
속력은 스칼라이고
속도는 속력 + 방향을 포함한 벡터이다
가속도
가속도의 공식은 위와 같다
"거리의 변화량 / 시간의 변화량"이 속도였고
"속도의 변화량 / 시간의 변화량"이 가속도라는 것이다
일반적으로 가속도를 표현할 때,
'80km/h(속도)'를 '1h(시간의 변화량)'로 나눈 '80km/h^2'로 표현한다
속도의 변화량과 속도의 갱신
가속도의 공식을 활용하면,
Δv = a * Δt 를 통해 속도의 변화량을 알아낼 수 있다
또한, 이러한 속도의 변화량을 통해
아래와 같은 속도의 갱신을 계산할 수 있다
V(현재 프레임의 속도) = V(이전 프레임의 속도) + Δv
위치의 변화량과 위치의 갱신
속도의 공식을 활용하면,
Δx = V * Δt 를 통해 위치의 변화량을 알아낼 수 있다
또한, 이러한 위치의 변화량을 통해
아래와 같은 위치의 갱신을 계산할 수 있다
X(현재 프레임의 위치) = X(이전 프레임의 위치) + Δx
게임 물리의 핵심 5가지
이처럼 게임에서는 위에서 소개된 5가지 공식들을 통해
물리 법칙을 구현해 낸다
위에서 소개된 5가지 과정을 다시 한번 정리하면
아래와 같다
1. a = F * m (가속도를 구하는 공식)
2. Δv = a * Δt (속도의 변화량)
3. V = V + Δv (속도의 갱신)
4. Δx = V * Δt (위치의 변화량)
5. X = X + Δx (위치의 갱신)
'게임 수학 & 물리 > 게임 물리' 카테고리의 다른 글
[게임 물리] 운동량(Momentum)과 반발 계수(Coefficient of restitution) (0) | 2024.03.09 |
---|---|
[게임 물리] 마찰력(Friction force)과 마찰계수(Coefficient of friction) (0) | 2024.03.08 |
[게임 물리] 운동 방정식(Equations of motion) (0) | 2024.03.07 |
[게임 물리] 프레임(Frame)과 순간속도(Instantaneous Velocity) (0) | 2024.03.06 |
[게임 물리] 등속도 운동(Uniform Linear Motion), 등가속도 운동(Uniformly Accelerated Motion), 포물선 운동(Projectile motion) (0) | 2024.03.05 |