인스턴스 생성 및 관리
인스턴스(Instances)는 오브젝트(Objects)로부터 생성되며, 생성된 후에는 GML 코드 및 GML Visual 작업을 통해 수정, 조작 및 삭제할 수 있습니다. 이 문서에서는 GameMaker에서 사용할 수 있는 인스턴스와 관련된 주요 기능을 정리합니다.
인스턴스 생성
인스턴스를 생성하는 방법은 몇 가지가 있습니다:
- 룸 에디터에서 인스턴스 레이어에 드래그하기
- 런타임에서
instance_create_depth
또는instance_create_layer
함수를 사용하여 생성하기 - 시퀀스 에디터에서 시퀀스에 추가하고 룸 에디터 또는 코드를 통해 시퀀스를 추가하기
- 현재 룸이 아닌 룸에 추가하기 위해
room_instance_add
사용하기
인스턴스 비활성화
인스턴스를 비활성화하면 해당 인스턴스는 이벤트를 처리하지 않지만 게임 내에서는 여전히 존재합니다. 비활성화에 대한 방법과 사용할 수 있는 함수에 대해서는 비활성화 인스턴스 페이지를 참조하세요.
오브젝트와 인스턴스의 차이
오브젝트와 인스턴스 핸들을 사용하는 일반적인 차이에 대한 내용은 오브젝트 vs. 인스턴스 페이지를 확인하세요.
함수 참조
함수 이름 | 설명 |
---|---|
instance_create_layer |
특정 레이어에 인스턴스를 생성합니다. |
instance_create_depth |
깊이를 기준으로 인스턴스를 생성합니다. |
instance_destroy |
특정 인스턴스를 삭제합니다. |
instance_exists |
특정 인스턴스가 존재하는지 확인합니다. |
instance_change |
인스턴스의 오브젝트 타입을 변경합니다. |
instance_copy |
인스턴스를 복사합니다. |
instance_find |
특정 인스턴스를 찾습니다. |
instance_furthest |
가장 멀리 있는 인스턴스를 찾습니다. |
instance_nearest |
가장 가까운 인스턴스를 찾습니다. |
instance_number |
현재 존재하는 인스턴스의 수를 반환합니다. |
instance_place |
다른 오브젝트와의 충돌을 확인합니다. |
instance_place_list |
여러 오브젝트와의 충돌을 확인합니다. |
instance_position |
인스턴스의 위치를 반환합니다. |
instance_position_list |
여러 인스턴스의 위치를 반환합니다. |
instance_id_get |
특정 인스턴스의 ID를 반환합니다. |
알람
인스턴스에는 알람 이벤트 값을 얻거나 설정하는 데 사용할 수 있는 내장 배열 변수 alarm
이 있으며, 이를 동일한 작업을 수행할 수 있는 두 가지 함수로 사용할 수 있습니다:
함수 이름 | 설명 |
---|---|
alarm_get |
특정 알람 값을 얻습니다. |
alarm_set |
특정 알람 값을 설정합니다. |
변수 참조
변수 이름 | 설명 |
---|---|
global |
전역 변수를 사용하여 접근할 수 있습니다. |
instance_id |
현재 인스턴스의 ID를 제공합니다. |
instance_count |
현재 인스턴스 수를 반환합니다. |
인스턴스 변수
각 인스턴스는 표시 방식, 자산 사용 방법, 충돌 반응 등을 제어하는 데 사용할 수 있는 다양한 내장 변수를 제공합니다. 이들 변수에 대한 목록은 다음과 같습니다:
변수 이름 | 설명 |
---|---|
x |
인스턴스의 x좌표 |
y |
인스턴스의 y좌표 |
image_index |
현재 표시중인 스프라이트의 인덱스 |
collision |
충돌 상태를 나타내는 플래그 |
이 문서를 통해 인스턴스 생성과 관리 방법, 그리고 관련 기능을 쉽게 이해할 수 있기를 바랍니다! 추가적인 질문이나 활용 예제가 필요하시면 언제든지 문의해 주세요.