마찰력이란 두 물체 사이에서 물체의 운동을 방해하는 힘을 마찰력이라고한다. 물체를 민다던지, 뭔가에 접촉해서 문질러본다던지 일상생활에서도 많은 마찰력을 경험해봤을 것이다. 그리고 그런 경험속에서, 내가 어떤 물체를 운동시키는 방향과 수직되는 힘에따라( 보통 무게가 무겁다던지 ) 물체의 가속도가 달라지는것을 알게 모르게 느꼇을것이다.
■ 마찰에서 고려할 데이터들
마찰이라는 것을 구현하기 위해서는 아래의 데이터들을 고려해야한다.
1. 움직이려는 방향의 F
말그대로 어떤 물체에 준 힘을 뜻한다. 나머지 아래의 데이터는 최종적으로 이 데이터를
뽑기위해 필요하다. 힘 F가 최종적으로 얼마고, 물체가 가진 질량을 안다면 우리는 가속도 a를 구할수있다.
2. 정지 최대 마찰력 F_smax와 운동 마찰력 F_k
어떠한 물체에 힘을 주어 밀어본 경험을 떠올려보자. 분명히 물체는 어느정도의 힘까지는 움직이지 않다가, 그 어느 정도 이상의 힘을주면 물체가 술술 움직이는것을 경혐해봤을 것이다. 그 경험에서 알수있는 사실은 아래와 같다.
가. 정지마찰력 F_s가 존재한다.
어느정도의 이상의 힘을 주지않은이상 물체는 움직이지않는다. 즉 그말은 어느정도의 힘까지는 그것과 똑같은 크기지만 방향이 반대인 힘인 F_s가 같은 물체에 적용되고있음을 의미한다.( F와 F_s 가 적용되는 물체는 같은 물체이기때문에 질량이 같다, 고로 물체가 가속되지않는다면 힘도 같은것이다 )
나. 정지 최대마찰력 F_smax 가 존재한다.
어느정도 이상의 힘을 주면 물체는 움직인다. 즉 F_s 란 정지마찰력은 어느정도의 한계가 존재한다는 것을 알수가있다.
다. 운동 마찰력 F_k는 존재하고 F_k 는 F_smax보다 작다.
물체에 적용되는 힘이 F_smax 를 넘어서, 미끌어지는 상태에 가면 물체가 더 적은 힘으로도 움직이게 되는것을 알수가있다. 즉 여기서 미끌어지는 상태에서는 F_s가 아닌 다른 운동마찰력 F_k라는 것이 존재하고 F_smax 보다 작다는 것을 알수가있다.
( 존재한다는 표현보다는 .. 그냥 그런 힘이 있다고 볼수 있다 라는게 맞지않나 싶다 )
3. 수직항력 N

일반적으로 물체를 땅바닦에 놓는다고해서 물체가 땅바닦 아래로 가라앉지는 않는다. 즉 물체가 바닦으로 향하는 힘에의해( 여기서는 중력 ) 물체가 가라앉지 않는다는것은, 그 물체에는똑같은 크기지만 방향이 반대인 수직항력 N이란 것이 가해지고있다는 것이다. 그리고 경험에서 느꼇듯 이 N이 클수록 정지 최대 마찰력 F_smax과 운동마찰력 F_k가 비례해서 크다라는 것을 알수있다.
4. 정지마찰계수 M_s 와 운동마찰계수 M_k
N이란 것과 F_smax, F_k 가 비례하는 것은 사실이나 1:1 비례 관계는 아닐수있다. 예를어 같은 크기를 가진 얼음 육면체와, 고무 육면체가 아스팔트 바닦위에 있다고하자. 어느게 더 잘 움직이겠는가? 혹은 같은 크기의 고무 육면체가 하나는 얼음바닦 위에있고, 하나는 아스팔트 위에있다면 어느게 더 잘움직이겠는가?
그래서 여기서 마찰계수란게 필요하다. 마찰계수란거는 위의 육면체와 바닦처럼 두 물체의 표면사이에 관계를 나타내는 실험적인 값이다. 고무와 얼음은 이렇게 움직이네..이것의 마찰계수는 1.0.. 얼을과 얼을음 이렇게 움직이네 이것의 마찰계수는 0.2 .. 뭐 이런식의 계수라는것인데 사실 코딩할때는 그냥 적절한 수를 집어넣으면된다. 어쨋든 이 마찰계수를 이용하여
F_smax = M_s * N
F_k = M_k * N
이렇게 F_smax와 F_k 에 대한 식을 세울수가있다. 마찰계수 F_smax가 1이라면 N과 F_smax는 1:1 관계일것이고 아니면 아닐것이다.
쭉 설명을 했는데.. 사실 나도 물리를 잘 모른다. 맞는 소리 하는지도 모르겠고.. 하지만 저 데이터들을 잘 이용해서 마찰력이란걸 게임에서 구현할수는 있을거 같다.
댓글 없음:
댓글 쓰기