속도 설정 가이드
이 문서는 인스턴스의 이동 속도를 설정하는 방법에 대한 설명입니다. 속도는 게임의 한 프레임(스텝) 동안 인스턴스가 이동해야 하는 픽셀 수로 계산됩니다. 기본적으로 속도 값은 방향 벡터에 추가되며, 수평 또는 수직 속도를 선택할 수도 있습니다.
속도 설정 설명
속도 설정 기본 정보
| 항목 | 설명 |
|---|---|
| 속도 | 인스턴스의 이동 속도 (음수 가능) |
| 방향 | 인스턴스의 이동 방향 (도 단위) |
기본 동작
- 기본적으로 속도 값이 방향 벡터에 추가됩니다.
- 예를 들어, 속도를 2로 설정하고 방향을 45°로 설정하면 인스턴스는 매 게임 프레임마다 위쪽과 오른쪽으로 2픽셀 이동합니다.
수평 또는 수직 속도 설정
direction필드를 클릭하여 수평(Horizontal)이나 수직(Vertical) 속도를 선택할 수 있습니다.- 선택한 경우, 속도가 수평 또는 수직 벡터에만 적용됩니다.
상대 속도
- 속도를 현재 속도에 대해 상대적으로 설정할 수 있으며, 이 경우 실제 인스턴스의 속도에 값을 추가하거나 빼게 됩니다.
- 음수 값을 입력하면 현재 방향의 반대 방향으로 이동합니다.
예제
코드 예제
이 코드는 인스턴스에서 왼쪽 마우스 버튼 클릭을 감지하고, 감지 시 방향을 아래(270°)로 설정하고 속도를 5로 설정합니다.
if (mouse_check_button_pressed(mb_left)) {
direction = 270; // 아래 방향
speed = 5; // 속도 5
}
추가 활용 예제
- 다양한 속도 설정
- 인스턴스가 점프할 때 속도를 증가시킬 수 있습니다.
gml if (key_jump) { speed += 10; // 점프 시 속도 증가 }
- 속도 감소
- 브레이크 기능 구현.
gml if (key_brake) { speed -= 2; // 브레이크 시 속도 감소 if (speed < 0) speed = 0; // 속도는 0 이하로 내려가지 않음 }
- 이동 방향 반전
- 사용자가 특정 키를 누르면 속도를 반전시킵니다.
gml if (key_reverse) { speed = -speed; // 현재 속도의 방향 반전 }
위의 예제들은 인스턴스의 속도를 효과적으로 조정하고 제어하는 다양한 방법을 보여줍니다. 인스턴스의 속도 제어를 통해 더욱 다채로운 게임 메커니즘을 개발해 보세요.