직사각형 내 점 확인 함수
이 문서는 GameMaker에서 제공하는 point_in_rectangle
함수에 대해 설명합니다. 이 함수를 사용하면 특정 점이 정의된 직사각형 영역 내에 있는지를 확인할 수 있습니다. 만약 점이 직사각형 내부에 있다면 함수는 true
를 반환하고, 그렇지 않으면 false
를 반환합니다.
문법
point_in_rectangle(px, py, x1, y1, x2, y2);
인수 설명
인수 | 유형 | 설명 |
---|---|---|
px | 숫자 | 확인할 점의 x 좌표 |
py | 숫자 | 확인할 점의 y 좌표 |
x1 | 숫자 | 확인할 직사각형의 왼쪽 x 좌표 |
y1 | 숫자 | 확인할 직사각형의 위쪽 y 좌표 |
x2 | 숫자 | 확인할 직사각형의 오른쪽 x 좌표 |
y2 | 숫자 | 확인할 직사각형의 아래쪽 y 좌표 |
반환값
true
또는false
활용 예제
- 마우스 클릭 시 소리 재생
gml if (point_in_rectangle(mouse_x, mouse_y, x - 10, y - 10, x + 10, y + 10)) { audio_play_sound(snd_click, 0, false); }
- 게임 오브젝트의 충돌 감지
gml if (point_in_rectangle(player.x, player.y, enemy.x, enemy.y, enemy.x + enemy.width, enemy.y + enemy.height)) { // 플레이어가 적과 충돌했을 때의 처리 }
- UI 버튼 클릭 확인
gml if (point_in_rectangle(mouse_x, mouse_y, button.x, button.y, button.x + button.width, button.y + button.height)) { // 버튼 클릭 시 반응 }
- 드래그 앤 드롭 기능 구현
gml if (point_in_rectangle(dragged_item.x, dragged_item.y, drop_area.x, drop_area.y, drop_area.x + drop_area.width, drop_area.y + drop_area.height)) { // 아이템이 드롭 영역 내에 있을 때의 처리 }
이와 같은 방식으로 point_in_rectangle
함수를 활용하여 다양한 게임 기능을 구현할 수 있습니다.