728x90 Math6 게임에서 사용하는 수학 활용 공부(3) OBB 충돌 1. OBB(Oriented Bounding Box) 충돌OBB는 축에 정렬되지 않은 직사각형(2D) 또는 직육면체(3D) 충돌 박스이다.AABB충돌과 달리 OBB는 회전이 가능하여 회전된 오브젝트에 대한 충돌 감지가 더 정확하게 이루어진다. AABB와 OBB의 차이점은 1. 정렬방식 : AABB는 월드 좌표계 기준으로 축에 정렬됌, OBB는 로컬 좌표계 기준으로 기울어질 수 있다.2. 회전 가능 여부 : AABB는 불가능(회전 시 크기가 커짐), OBB 가능(기울어진 형태를 유지함)3. 충돌 감지 속도 : AABB는 단순 값 비교로 빠름, OBB 기하학적 계산이 필요하여 상대적으로 느림4. 정확도 : AABB는 물체가 회전 시 에는 비효율적으로 낮음, OBB는 객체 크기에 딱 맞게 조정 하기에 높음 1.. 2025. 3. 26. 게임에서 사용하는 수학 활용 공부(2) 1. 유클리드 기하학(Euclidean Geometry)유클리드 기하학은 일반적으로 우리가 가장 익숙한 기하학으로, 주로 평면이나 3D 공간에서 거리, 각도 등을 계산하는데 사용된다. 벡터와 점을 기반으로 여러 기하학적 특성을 계산할 수 있다. 1. 거리 계산(Distance Calculation)두 점 사이의 거리를 계산하는 공식은 피타고라스 정리를 기반으로 한다. 두 점 P1(x1, y1)와 P2(x2, y2) 사이의 유클리드 거리는 다음과 같다. 2D3D2. 각도 계산(Angle Calculation)두 벡터 사이의 각도를 계산하는 데 주로 사용되는 공식은 내적(Dot Product)을 사용한다. 두 벡터 A(Ax, Ay, Az)와 B(Bx, By, Bz) 사이의 각도 θ는 다음과 같이 계산한다.여.. 2025. 3. 25. 게임에서 사용하는 수학 활용 공부(1) 1. 로그(Log) 활용로그는 점진적인 증가를 표현하는 데 사용할 수 있다.예시로는 경험치 시스템이 있겠다.레벨업에 필요한 경험치를 다음과 같이 설정할 수 있다. 코드 예제 Level 1 인 경우 100xp가 필요하지만Level 10 인 경우 약 332Level 50 인 경우 664 가 필요하다점점 더 많은 경험치를 필요로 하게 만드는 효과가 있다. 2. 지수(Exponential) 활용지수는 빠르게 증가하는 성장 시스템에 사용할 수 있다.적 체력 스케일링 레벨이 올라갈수록 체력이 급격히 증가한다. Level 1 인 경우 100HP 지만Level 10 인 경우 약 619Level 50 인 경우 9100이 된다.로그와 반대로, 급격하게 증가하는 성질을 이용할 수 있다. 3. 시그모이드(Sigmoid) .. 2025. 3. 25. 삼각함수를 이용한 게임 수학 1. 삼각함수사인 (sin), 코사인 (cos), 탄젠트 (tan)- 직각삼각형에서 변의 길이 비율을 나타냄- 원형 운동, 회전 등에 사용된다 1. 라디안 (Radian) : 각도 대신 원주율 기준으로 각을 표현- 1 radian = 약 57.3도- 360도 = 2pi rad 2. 피타고라스 정리- a^2 + b^2 = c^2- 거리 계산 등에 사용된다. 1. 삼각함수의 덧셈 정리삼각함수의 덧셈 정리는 두 개의 각을 더하거나 빼는 경우, 해당 삼각함수 값을 어떻게 구할 수 있는지를 나타내는 공식이다.이 공식은 이미 알고 있는 삼각함수 값들을 조합하여 새로운 값을 빠르게 계산할 수 있도록 도와준다. 1. 코사인과 사인의 덧셈 정리 2. 사인의 덧셈 정리3. 탄젠트의 덧셈 정리탄젠트는 분수 형태로 표현되.. 2025. 3. 24. 이전 1 2 다음 728x90