물리 엔진 궁금증 1
Categories:tech
물리 엔진 궁금증 1
발생
요새는 게임 만들때 거의 필수적으로 게임 엔진을 쓰는데 게임 엔진에 기본적으로 물리 엔진도 같이 들어가있어서 물리 엔진을 따로 구현 할 일이 없다.
물리 엔진에 궁금증이 생겨 물리 엔진은 어떤 이론으로 구현이 되는지 알아보았다.
뉴턴 역학
모든 물리 엔진의 뼈대는 뉴턴 역학이라고 한다.
사과 떨어지는거에서 받은 영감이 현대에 미치는 영향이 정말 어마어마한거 같다. 나도 뉴턴네 사과나무 같은 영감의 원천이 근처에 있길 바란다.

출처 : https://scottberkun.com/2010/challenging-newtons-apple
난 수학을 잘 못한다 하지만 그래도 뉴턴 역학을 한번 이해는 해보고 싶어서 노력해보았다.
뉴턴 역한 제 2법칙 F = ma
힘(F) = 질량(m) x 가속도(a)
이 식의 의미는 “물체에 작용하는 힘이 그 물체의 질량과 가속도의 곱과 같다” 라고 한다.
여기서 가속도란 정확히는 속도를 올리는 가속의 의미만이 아닌 속도를 점점 변하게 한다는 의미로 가감속이라는 용어가 더 정확할 수 있다고 한다.
이 식을 아주 기초적인 물리 엔진에 적용하면 아래와 같은 물체의 가속도 차이를 줄 때 사용이 가능하다.
기본 F는 1.12N로 잡아 두었다.
m = 1.0

m = 5.0

난 마찰력과 다른 요소를 포함하지 않은 아주 간단한 예시이지만 게임을 만들다보면 자주 사용하게 되는. 물체의. 질량에 따른 가속도 차이를 유명한 F = ma 공식으로 이해 후 직접 구현해보니 좀 더 와닿는 것 같다.
결론
F = ma 공식에 대해 찾다가 깨닫게 된 사실은 모든 공식은 답을 찾으려는게 아닌 그 사이의 관계를 이해하려 만들어졌다는 것이다. 학생때는 그저 답을 찾으려 사용했던 공식들이 사실은 결과에 대한 사실 관계를 이해하기 위해 만들어졌다는 것을 알게되니 뭔가 눈이 떠지는 기분이다.
완벽히 이해한 것은 아니지만 개발에 적용 할 때 큰 도움이 될 것 같다.
과학쿠키 님의 F=ma 설명 영상이 이해에 큰 도움을 주었다.
Day-32