마찰 설정 (Set Friction)
이 문서는 인스턴스의 "마찰"을 설정하는 방법에 대해 설명합니다. 마찰은 게임의 매 프레임마다 속도 벡터에서 특정 양을 차감하는 것을 의미하며, 사용자가 차감할 양을 지정합니다. 일반적으로 값이 작을수록 효과적이며, 예를 들어 0.2와 같은 값이 적합합니다. 그러나 실제 차감 양은 프로젝트의 설정에 따라 달라질 수 있습니다. 상대 플래그를 설정하면 지정한 양이 현재의 마찰 값에 추가됩니다.
행동 구문 (Action Syntax)
인수 (Arguments)
| 인수 | 설명 |
|---|---|
| friction | 적용할 마찰 값 (양수만 가능) |
예제 (Example)
아래의 코드 블록은 인스턴스의 다양한 이동 속성과 관련된 속성을 설정하는 예제입니다.
// 다양한 속성 설정
gravity_direction = 270; // 중력 방향을 아래로 설정 (270°)
gravity_force = 0.05; // 중력 세기를 0.05로 설정
friction = 0.2; // 마찰을 0.2로 설정
활용 및 응용 예제
예제 1: 플랫폼 게임에서의 마찰 사용
플랫폼 게임에서 다양한 표면에서 캐릭터의 이동 속도를 조절할 수 있습니다. 마찰 값을 조정하여 캐릭터가 표면에서 미끄러지거나 잘 멈출 수 있도록 설정할 수 있습니다.
// 플랫폼 게임 캐릭터 이동 설정
if (on_ground) {
friction = 0.1; // 바닥에 있을 때 낮은 마찰
} else {
friction = 0.5; // 공중에 있을 때 높은 마찰
}
예제 2: 차량의 드리프트 효과 설정
차량 게임에서 드리프트 효과를 만들기 위해 마찰 값을 조정합니다. 마찰이 낮을 때는 더 쉽게 드리프트 할 수 있습니다.
// 차량 드리프트 설정
if (is_drifting) {
friction = 0.05; // 드리프트 중일 때 낮은 마찰
} else {
friction = 0.3; // 일반 주행 중일 때 높은 마찰
}
예제 3: 다양한 환경 속도 변경
게임에서 환경에 따라 캐릭터의 마찰 값을 조정하여 더욱 현실적인 이동을 구현할 수 있습니다.
// 환경에 따른 마찰 조정
if (environment == "ice") {
friction = 0.1; // 얼음에서 미끄러짐
} else if (environment == "sand") {
friction = 0.5; // 모래에서는 느리게 움직임
} else {
friction = 0.2; // 일반적인 마찰
}
이러한 예제들을 통해 마찰을 설정하여 다양한 속도 조절 및 환경 효과를 효과적으로 구현할 수 있습니다.