객체 가시성 확인 함수
이 문서에서는 object_get_visible 함수에 대해 설명합니다. 이 함수는 특정 객체가 "가시적"으로 설정되어 있는지(즉, 그리기 이벤트가 실행되는지) 여부를 알려줍니다. 이 함수는 인스턴스 함수가 아니므로, 동일한 객체에 대해 가시적인 객체와 비가시적인 인스턴스가 존재할 수 있습니다. 개별 인스턴스의 가시성은 visibleinstance 변수를 사용하여 설정할 수 있습니다.
문법
object_get_visible(obj);
매개변수 설명
| 매개변수 | 유형 | 설명 |
|---|---|---|
| obj | 정수 | 확인할 객체의 인덱스 |
반환값
- 객체가 가시적이면
true, 그렇지 않으면false를 반환합니다.
사용 예제
아래 코드는 현재 인스턴스가 가시한지 여부를 확인하고, 객체 인덱스가 가시적으로 설정되어 있는지 체크합니다. 만약 인스턴스가 비가시적이지만 객체 인덱스가 가시적으로 설정되어 있다면, 인스턴스를 가시적으로 설정합니다.
if (!visible && object_get_visible(object_index)) {
visible = true;
}
활용 및 응용 예제
1. 게임 내 적 캐릭터의 가시성 조정
적 캐릭터가 플레이어와의 거리나 특정 조건에 따라 가시성을 조정할 수 있습니다.
if (distance_to_object(player) < 300) {
if (!visible && object_get_visible(object_index)) {
visible = true; // 적 캐릭터를 가시적으로 설정
}
} else {
visible = false; // 적 캐릭터를 비가시적으로 설정
}
2. UI 요소의 가시성 제어
게임의 UI 요소가 특정 이벤트에 따라 가시성을 변경할 수 있습니다.
if (event_type == ev_mousebuttonup) {
if (object_get_visible(ui_element)) {
visible = false; // UI 요소를 비가시적으로 설정
} else {
visible = true; // UI 요소를 가시적으로 설정
}
}
3. 레벨 디자인에서의 가시성 활용
레벨 디자인에서 특정 객체가 플레이어의 시야에 들어올 때만 가시적으로 보이도록 설정할 수 있습니다.
if (player_in_view) {
if (!visible && object_get_visible(object_index)) {
visible = true; // 객체를 가시적으로 설정
}
} else {
visible = false; // 객체를 비가시적으로 설정
}
결론
object_get_visible 함수는 객체의 가시성을 확인하는 데 유용한 도구입니다. 이를 통해 게임 내 다양한 요소의 가시성을 동적으로 조정할 수 있으며, 게임의 몰입감을 높이는 데 기여할 수 있습니다.