본문 바로가기
반응형

프로그래밍 이야기/GameDev33

[게임이론] 힘과 가속도의 활용 [게임이론]힘과 가속도에서 학습한 내용을 Unity에 적용해본다. Unity에서 힘과 가속도 관련된 속성들은 다음과 같이 네가지 이다. ForceMode.Force ForceMode.Impulse ForceMode.VelocityChange ForceMode.Acceleration 위의 속성들의 특징은 크게 질량에 영향을 받는지 안받는지로 구분된다. * 질량의 영향을 받는 속성 : Force, Impulse * 질량과 무관하게 힘을 가하는 속성 : VelocityChange, Acceleration 그리고 Impulse, VelocityChange는 순간적인 힘을 가할 때 사용되며, Force와 Acceleration은 지속적으로 힘을 가할 때 사용된다. 아래의 코드는 이와 관련된 구현 예제이다. pub.. 2021. 1. 14.
[게임이론] 힘과 가속도 힘이란? 힘은 질량을 가지고 있는 물체를 빨라지거나 느려지게 한다. 즉, "힘을 받은 물체는 가속한다"라는 것이다. 가속도란? 속도를 점점 빠르게 또는 느리게 한다. 가속은 가속과 감속을 포함하는 의미이다. F = ma ? Force = Mass * Acceleration -> 힘 = 질량 * 속도의 변화(가속도) 속도 : 시간당 얼마나 이동했는가? -> m/s 가속도 : 속도의 변화 -> 시간당 얼마나 속도가 변했는가? -> 속도를 시간으로 나눠준다. -> ( m/s ) / s -> m/s2 (s의 제곱) F = m*a 에 의해 F가 일정한 값이라면 m과 a의 관계는 다음과 같다. m이 커지면 a는 작아지고, m이 작아지면 a는 커진다. 중력 (g) = -9.8 m/s2 물체의 무게(힘) = m(질량).. 2021. 1. 10.
[게임이론] 행렬 객체의 Position, Rotation, Scale은 내부적으로 다음의 변환 행렬 절차를 거친다. (항등행렬, 크기 변환 행렬, 이동 행렬, 회전 행렬) 행렬의 기본 연산 행렬의 합, 차의 규칙 두 항은 동일한 행과 열로 구성 되어야 한다. 행렬의 곱의 규칙 전항의 행의 길이와 후항의 열의 길이가 동일해야 곱할 수 있다. 곱할때 동일 행의 값과 동일 열의 값을 곱한다. 이에 대한 예는 다음과 같다. 동차 좌표계 변환 행렬 계산을 좀 더 쉽게 하는데 도움이 된다. (x, y, z) -> (x, y, z, 1) 변환 행렬 예를 들어 (2, 1, 3)의 좌표를 x방향으로 3만큼 이동하면 (5, 1, 3)이라는 것을 쉽게 알 수 있다. 그런데 회전이나 복잡한 이동을 이런 식으로 쉽게 알기란 어렵다. 그러므로 .. 2021. 1. 2.
[게임이론] 벡터-외적의 활용 Vector3.Cross(_col.transform.right, distVec).z [게임이론]벡터의 외적에서 학습한 내용을 Unity에서 간단히 적용해본다. 시나리오 수퍼마리오가 점프로 벽돌을 깨는 행위와 벽돌 위로 올라가는 것 구현한다. 벽돌 시점에서 마리오가 아래 방향에서 점프를 했는지 위에서 점프해서 내려왔는지 판단해야한다. 이때 벡터의 외적 내용을 바탕으로 위-아래를 판단할 수 있다. 점프시에 노란색 오브젝트와 충돌하면 디버그 로그로 Up, Down이 출력된다. 1. 플레이어 객체에서 충돌 객체의 벡터를 구한다. Vector3 distVec = transform.position - _col.transform.position; 2. (1)의 결과로 도출된 distVec와 충돌 객체의 외적을 구한다.. 2020. 12. 31.
반응형