sprite_get_bbox_bottom 함수 설명
sprite_get_bbox_bottom 함수는 스프라이트의 경계 상자의 하단 위치를 반환합니다. 이 값은 기본 스프라이트 자산의 왼쪽 상단 모서리(0,0)를 기준으로 한 상대적인 값입니다. 이 값은 스프라이트 편집기에서 충돌 마스크 속성으로 찾을 수 있는 값과 동일합니다. 아래 이미지는 이 값이 어떻게 계산되는지를 보여줍니다.
문법
sprite_get_bbox_bottom(ind);
인자 설명
| 인자 | 타입 | 설명 |
|---|---|---|
| ind | 정수 | 확인할 스프라이트의 인덱스 |
반환값
- 스프라이트의 경계 상자 하단 위치의 상대적인 값
예제
var ww, hh;
ww = sprite_get_bbox_left(sprite_index) - sprite_get_bbox_right(sprite_index);
hh = sprite_get_bbox_bottom(sprite_index) - sprite_get_bbox_top(sprite_index);
위 코드는 스프라이트의 충돌 마스크를 기준으로 너비와 높이를 계산합니다.
활용 예제
1. 스프라이트의 크기 계산
스프라이트의 크기를 계산하여 게임 내에서 객체의 위치를 조정할 수 있습니다.
var width = sprite_get_bbox_right(sprite_index) - sprite_get_bbox_left(sprite_index);
var height = sprite_get_bbox_bottom(sprite_index) - sprite_get_bbox_top(sprite_index);
2. 충돌 감지
충돌 감지를 위해 스프라이트의 경계 상자를 활용할 수 있습니다.
if (other.x < sprite_get_bbox_right(sprite_index) && other.x > sprite_get_bbox_left(sprite_index) &&
other.y < sprite_get_bbox_bottom(sprite_index) && other.y > sprite_get_bbox_top(sprite_index)) {
// 충돌 처리
}
3. 스프라이트 위치 조정
스프라이트의 위치를 조정하여 화면에 적절히 배치할 수 있습니다.
x = x + (sprite_get_bbox_right(sprite_index) - sprite_get_bbox_left(sprite_index)) / 2;
y = y + (sprite_get_bbox_bottom(sprite_index) - sprite_get_bbox_top(sprite_index)) / 2;
4. 스프라이트 애니메이션
스프라이트 애니메이션을 만들 때 경계 상자를 사용하여 애니메이션의 끝을 결정할 수 있습니다.
if (animation_finished) {
// 다음 애니메이션으로 전환
sprite_index = next_animation_sprite;
}
이와 같이 sprite_get_bbox_bottom 함수를 활용하여 다양한 게임 로직을 구현할 수 있습니다.