레이어 시퀀스 생성 함수 설명
layer_sequence_create 함수는 주어진 레이어에서 시퀀스 자산의 인스턴스를 생성하는 기능을 제공합니다. 이 함수를 사용하기 위해서는 다음과 같은 인자를 제공해야 합니다:
- layer_id: 레이어의 핸들. 이는 레이어 이름(룸 편집기에서 정의된) 또는
layer_get_id함수로 반환된 고유 레이어 핸들일 수 있습니다. - x: 룸 내에서 시퀀스를 생성할 X 위치.
- y: 룸 내에서 시퀀스를 생성할 Y 위치.
- sequence_id: 생성할 시퀀스의 ID. 이는 자산 브라우저에서 정의한 시퀀스의 이름 상수입니다.
이 함수는 시퀀스 요소의 고유 ID를 반환하며, 이 ID는 이후 모든 레이어 함수에서 사용되거나 layer_sequence_get_instance 함수를 통해 시퀀스 인스턴스 구조체를 검색하는 데 사용될 수 있습니다.
주의사항
시퀀스에 객체 트랙이 포함되어 있는 경우, 시퀀스 요소가 생성되자마자 해당 인스턴스가 생성됩니다. 이는 Dope Sheet에서 자산 키의 위치와 관계없이 발생합니다. 시퀀스 컨트롤러는 인스턴스의 가시성을 전환하여 자산 키의 위치와 지속 시간에 따라 숨기거나 표시합니다. 따라서 인스턴스는 시퀀스 요소가 생성될 때 Create 이벤트를 실행하며, 자산 키가 시작될 때는 실행되지 않습니다. 객체 트랙을 위해 생성된 모든 인스턴스는 시퀀스 인스턴스와 동일한 레이어에서 생성됩니다.
함수 문법
layer_sequence_create(layer_id, x, y, sequence_id)
인자 설명
| 인자 이름 | 타입 | 설명 |
|---|---|---|
| layer_id | String 또는 Layer ID | 타겟 레이어의 핸들 |
| x | Real | 시퀀스를 생성할 룸 내 X 위치 |
| y | Real | 시퀀스를 생성할 룸 내 Y 위치 |
| sequence_id | Sequence Asset | 자산 브라우저에서 정의된 시퀀스 자산 |
반환값
- Sequence Element ID: 생성된 시퀀스 요소의 고유 ID.
활용 예제
다음은 layer_sequence_create 함수를 활용한 몇 가지 예제입니다.
예제 1: 시퀀스 생성 및 일시 정지
var _s = layer_sequence_create("Background", 0, 0, seq_AnimatedBackground);
layer_sequence_pause(_s);
예제 2: 시퀀스 생성 후 재생
var _s = layer_sequence_create("Foreground", 100, 150, seq_ForegroundAnimation);
layer_sequence_play(_s);
예제 3: 시퀀스 위치 변경
var _s = layer_sequence_create("UI", 50, 50, seq_UIAnimation);
layer_sequence_set_position(_s, 200, 200);
예제 4: 시퀀스 제거
var _s = layer_sequence_create("Background", 0, 0, seq_AnimatedBackground);
layer_sequence_destroy(_s);
이와 같은 방식으로 layer_sequence_create 함수를 사용하여 다양한 시퀀스를 생성하고 조작할 수 있습니다.