hspeed 속성 이해하기
hspeed는 모든 인스턴스가 가지는 "내장" 속성 중 하나로, 인스턴스의 수평 이동 속도를 정의합니다. 이 속도는 각 스텝마다 픽셀 단위로 x축을 따라 이동하는 양을 나타냅니다.
hspeed의 기본 개념
hspeed의 값이3이라면, 매 스텝마다 오른쪽(+x)으로 3 픽셀 이동합니다.hspeed의 값이-3이라면, 매 스텝마다 왼쪽(-x)으로 3 픽셀 이동합니다.
주의할 점
speed와direction변수를 설정하면,hspeed값이 자동으로 업데이트됩니다.- 반대로,
hspeed값을 변경하면speed와direction값도 영향을 받습니다. gravity,gravity_direction,friction도 이 변수를 수정할 수 있습니다.
구문
hspeed;
반환값
- (단일 정밀도 부동 소수점 값)
예제 코드
if (keyboard_check(vk_left)) hspeed = -5;
if (keyboard_check(vk_right)) hspeed = 5;
위의 코드는 어떤 키가 눌렸는지에 따라 수평 속도를 조정합니다.
hspeed 활용 예제
1. 부드러운 이동 구현하기
부드러운 이동을 위해, hspeed를 직접적으로 설정하지 않고 점진적으로 변화를 줄 수 있습니다.
if (keyboard_check(vk_left)) {
hspeed -= 0.5; // 왼쪽으로 점차적으로 속도를 줄임
}
if (keyboard_check(vk_right)) {
hspeed += 0.5; // 오른쪽으로 점차적으로 속도를 증가시킴
}
2. 경계 검사 추가하기
경계를 설정하여 인스턴스가 화면 밖으로 나가지 않도록 할 수 있습니다.
||
|---|
hspeed = 0; // 경계를 넘어가지 않도록 속도를 0으로 설정
}
3. 스크롤 효과 만들기
인스턴스의 위치가 아닌 카메라 움직임에 따르도록 hspeed를 활용할 수 있습니다.
if (keyboard_check(vk_left)) {
camera.x += 5; // 카메라를 왼쪽으로 이동
}
if (keyboard_check(vk_right)) {
camera.x -= 5; // 카메라를 오른쪽으로 이동
}
요약
hspeed 속성은 인스턴스의 수평 이동을 제어하는 중요한 요소입니다. 이를 잘 활용하면 다양한 게임 메커니즘을 구현할 수 있습니다. 인스턴스의 hspeed 값을 유연하게 조정하며 게임의 플레이어 경험을 향상시킬 수 있습니다.