물리학 질량 속성 (physics_mass_properties)
이 함수는 물리 엔진이 활성화된 인스턴스의 사용자 정의 질량 및 회전 관성을 설정하는 데 사용됩니다. 일반적으로 인스턴스의 질량, 질량 중심, 회전 관성은 경계 고정물의 표면적과 밀도를 조합하여 계산됩니다. 그러나 특별한 경우에는 질량 중심을 오프셋하거나 관성을 변경해야 할 수 있으며, 이때 이 함수를 사용합니다.
질량 (Mass)
질량은 실제 세계의 무게(예: 킬로그램)로 계산되므로 모델링하는 객체에 대해 현실적인 값을 유지하는 것이 중요합니다. 예를 들어, 물리 객체가 사람을 나타내는 경우, 질량은 2kg이 아닌 70kg일 수 있습니다.
- 질량은 음수가 될 수 없습니다.
질량 중심 (Centre of Mass)
질량 중심은 정의한 고정물의 형태에 따라 자동으로 계산됩니다. 고정물과 동일한 형태의 스프라이트가 있다면 "중심 원점" 옵션을 선택하여 대략적인 질량 중심 위치를 확인할 수 있습니다.
그러나 이 값이 정확하지 않거나 특정 효과를 원할 경우, 이 함수를 사용하여 질량 중심의 x 및 y 좌표를 변경할 수 있습니다. 이 값들은 지역/상대적 값이므로 (0,0)은 인스턴스의 원점입니다. 예를 들어, 질량 중심이 (-4,0)이라면 원점에서 왼쪽으로 4픽셀 이동하게 됩니다.
회전 관성 (Rotational Inertia)
관성 값은 인스턴스가 회전 속도의 변화에 얼마나 저항하는지를 정의합니다. 높은 관성은 더 많은 저항을 의미하고, 낮은 관성은 저항이 적음을 의미합니다.
- 회전 관성은 음수가 될 수 없습니다.
이 함수는 개별 고정물에 대해 질량과 관성을 설정하는 것이 아니라, 물리 엔진이 활성화된 전체 인스턴스에 대해 설정합니다. 고정물이 몇 개가 결합되어 있든 상관없이 적용됩니다.
이 함수는 필요할 때만 사용해야 하며, 물리 시뮬레이션은 고정물의 밀도와 크기를 기반으로 질량과 관성이 최적화되도록 설계되었습니다. 이러한 값을 변경하면 예상치 못한 결과가 발생할 수 있습니다.
구문 (Syntax)
physics_mass_properties(mass, local_center_x, local_center_y, inertia)
인수 (Arguments)
인수 | 유형 | 설명 |
---|---|---|
mass | Real | 고정물이 가질 새로운 질량 |
local_center_x | Real | 새로운 질량 중심의 지역 x 좌표 |
local_center_y | Real | 새로운 질량 중심의 지역 y 좌표 |
inertia | Real | 고정물의 회전 관성 |
반환값 (Returns)
N/A
활용 예제
// 질량을 70kg으로 설정하고, 질량 중심을 (0,0)으로 설정하며, 회전 관성을 10으로 설정
physics_mass_properties(70, 0, 0, 10);
// 질량을 50kg으로 설정하고, 질량 중심을 (-5, 5)로 설정하며, 회전 관성을 15로 설정
physics_mass_properties(50, -5, 5, 15);
// 질량을 100kg으로 설정하고, 질량 중심을 (10, -10)으로 설정하며, 회전 관성을 20으로 설정
physics_mass_properties(100, 10, -10, 20);
이 예제들은 물리 객체의 질량, 질량 중심 및 회전 관성을 설정하는 방법을 보여줍니다. 각 예제는 서로 다른 값으로 물리 객체의 동작을 조정하는 데 사용될 수 있습니다.