Machineboy空
곡선 관련 공식들: 각속도(Angular Velocity), 자유 낙하(Free fall), 포물선 공식(Parabola) 본문
Game/게임 수학
곡선 관련 공식들: 각속도(Angular Velocity), 자유 낙하(Free fall), 포물선 공식(Parabola)
안녕도라 2023. 9. 19. 13:201) 각속도(Angular Velocity)
회전하는 물체의 단위시간당 각위치

어떤 점의 둘레를 Ts 동안에 일주하는 물체의 각속도는 2π/T rad/sec이다.
* 원의 둘레/ 시간 = 2πr / t
// 잡은 물체를 던질 때 손의 궤적(?)이 곡선일테니까.
// 직선 속도 공식이 아닌 각속도 공식을 이용한다.
handAngularVelocity = radian / Time.fixedDeltaTime * axis;
2) 자유 낙하(Free fall)
뉴턴 역학에서 오직 중력만이 작용하는 물체의 운동
정지한 물체를 놓고, 오직 중력에 의해서만 낙하하는 상태

- 낙하는 통상적으로 밑으로 향하는 운동을 의미
- 뉴턴 역학의 자유낙하는 중력의 방향에 따라 반드시 밑을 향하지는 않을 수 있다.
- 예) 달의 궤도가 지구를 향하지는 않지만 달은 자유낙하를 하고 있다.
- 처음엔, 높이만 있고 속력이 없기 때문에 위치 에너지만 갖고 있다.
- 낙하하기 시작하면서 위치에너지 감소, 운동에너지 증가
- => 에너지의 전환에 의해 물체가 떨어질 수록 속력이 커진다.
- 지면에 도달하기 직전에 위치 에너지는 모두 운동에너지로 전환되어 가장 빠른 속력을 갖게 된다.
- 처음 속도가 0인 낙하 운동 (처음 속도 v0, 가속도 g)
- v=v0+at → v=gt
//gravity: Vector3.down
//velocity: Vector3.forward
//points: 그 점들을 이은 것
void UpdateTeleport()
{
RaycastHit hitInfo = new RaycastHit();
bool canTeleport = false;
List<Vector3> posints = new List<Vector3>();
Vector3 gravity = new Vector3(0, -9.81f, 0);
Vector3 velocity = transform.forward * 10;
Vector3 pos = transform.position;
float dt = Time.fixedDeltaTime;
posints.Add(pos);
for (int i = 0; i < pointCount - 1; i++)
{
//// 자유낙하공식 -0.5f * g * t * t
//pos += velocity * Time.fixedDeltaTime + 0.5f * gravity * dt * dt;
//dt += Time.fixedDeltaTime;
// 점프공식
pos += velocity * dt;
velocity += gravity * dt;
Vector3 prePos = posints[posints.Count - 1];
Vector3 dir = prePos - pos;
Ray ray = new Ray(prePos, dir.normalized);
RaycastHit hit;
// 만약 이전위치와 현재위치 사이에 충돌체가 있다면 그 부딪힌 지점을 추가하고 그만 그리고싶다.
if (Physics.Raycast(ray, out hit, dir.magnitude))
{
posints.Add(hit.point);
hitInfo = hit;
marker.position = hit.point;
marker.up = hit.normal;
canTeleport = true;
break;
}
// 그렇지 않으면 계산한 위치를 목록에 추가하고싶다.
posints.Add(pos);
}
lr.positionCount = posints.Count;
lr.SetPositions(posints.ToArray());
}
}
3) 포물선 공식
'Game > 게임 수학' 카테고리의 다른 글
1-1. 게임을 지탱하는 기초 수학 - 수의 구조 (0) | 2025.02.17 |
---|---|
Vector 연산 기초 (1) | 2024.09.30 |
오른손 좌표계와 왼손 좌표계 (0) | 2024.06.23 |
속도(speed) vs 속력(velocity) (0) | 2023.09.20 |
Quaternion과 Euler angle (0) | 2023.09.06 |