키프레임 데이터 구조체
키프레임 구조체를 정의할 때, 해당 구조체와 연결될 데이터를 정의해야 합니다. 이 데이터는 여러 채널로 구성되며, 각 채널은 단순히 키프레임 데이터 구조체입니다. 채널은 설정하는 키프레임 데이터의 트랙 유형에 따라 특정 데이터 유형을 가질 수 있습니다.
키프레임 데이터 구조체의 변수
| 변수명 | 타입 | 설명 |
|---|---|---|
| channel | Real | 키프레임 데이터가 적용될 채널입니다. 0부터 시작하는 양의 정수 값입니다. "위치" 또는 "스케일" 키프레임의 경우, 특정 채널 값을 사용해야 합니다. 채널 0은 X 위치 또는 X 스케일, 채널 1은 Y 위치 또는 Y 스케일입니다. |
| spriteIndex | Sprite Asset | 트랙에 사용할 스프라이트 자산의 인덱스입니다. 이 속성은 seqtracktype_graphic 유형의 트랙에서만 사용 가능합니다. |
| soundIndex | Sound Asset | 트랙에 사용할 오디오 자산의 인덱스입니다. 이 속성은 seqtracktype_audio 유형의 트랙에서만 사용 가능합니다. |
| particleSystemIndex | Particle System Asset | 트랙에 사용되는 파티클 시스템 자산입니다. 이 속성은 seqtracktype_particlesystem 유형의 트랙에서만 사용 가능합니다. |
| playbackMode | Sequence Audio Key Constant | 사운드의 재생 모드입니다. 이 속성은 seqtracktype_audio 유형의 트랙에서만 사용 가능합니다. |
| curve | Animation Curve Struct | 애니메이션 곡선 구조체가 필요하며, seqtracktype_real 유형의 트랙에서만 사용 가능합니다. 곡선 구조체가 사용되지 않으면 이 속성의 값은 -1입니다. |
| value | Real | 키프레임 데이터 채널과 관련된 값입니다. seqtracktype_real 유형의 트랙에서만 사용 가능합니다. |
| colour | Array of Reals | 키프레임의 색상 값을 반환(또는 설정)하는 배열입니다. seqtracktype_colour 유형의 트랙에서만 사용 가능합니다. |
| sequence | Sequence Object Struct | 시퀀스 객체 구조체를 반환(또는 설정)합니다. seqtracktype_sequence 유형의 트랙에서만 사용 가능합니다. |
| objectIndex | Object Asset | 객체 인덱스를 반환(또는 설정)합니다. seqtracktype_instance 유형의 트랙에서만 사용 가능합니다. |
| events | Array of Strings | 키프레임 데이터 구조체와 관련된 이벤트 및 브로드캐스트 메시지에 접근할 수 있습니다. |
| eventMethod | Method | 키프레임 데이터 구조체와 관련된 메서드를 반환(또는 설정)합니다. seqtracktype_moment 유형의 트랙에서만 사용 가능합니다. |
재생 모드 변수 상수
| 상수 | 설명 | 값 |
|---|---|---|
| seqaudiokey_loop | 사운드가 재생될 때 루프됩니다. | 0 |
| seqaudiokey_oneshot | 사운드는 한 번만 재생되고 멈춥니다. | 1 |
텍스트 트랙 데이터
텍스트 트랙에 할당된 경우, 구조체는 다음과 같은 추가 변수를 포함합니다.
| 변수명 | 타입 | 설명 |
|---|---|---|
| text | String | 트랙에 그려질 텍스트 문자열입니다. |
| wrap | Boolean | 텍스트를 줄 바꿈할지 여부를 나타내는 불리언입니다. (true: 줄 바꿈, false: 줄 바꿈 안 함) |
| alignmentH | Text Horizontal Alignment Constant | 텍스트의 수평 정렬입니다. |
| alignmentV | Text Vertical Alignment Constant | 텍스트의 수직 정렬입니다. |
| fontIndex | Font Asset | 텍스트 트랙에서 사용하는 폰트 자산입니다. |
활용 예제
예제 1: 위치 키프레임 설정
var keyframe = new KeyframeData();
keyframe.channel = 0; // X 위치
keyframe.value = 100; // X 위치 값
예제 2: 오디오 트랙 설정
var audioKeyframe = new KeyframeData();
audioKeyframe.soundIndex = 1; // 오디오 자산 인덱스
audioKeyframe.playbackMode = seqaudiokey_loop; // 루프 재생
예제 3: 색상 키프레임 설정
var colorKeyframe = new KeyframeData();
colorKeyframe.colour = [1, 0, 0, 1]; // 빨간색 (A, R, G, B)
예제 4: 텍스트 트랙 설정
var textKeyframe = new KeyframeData();
textKeyframe.text = "Hello, World!";
textKeyframe.wrap = true; // 줄 바꿈
textKeyframe.alignmentH = seqtextkey_center; // 중앙 정렬
예제 5: 파티클 시스템 설정
var particleKeyframe = new KeyframeData();
particleKeyframe.particleSystemIndex = 2; // 파티클 시스템 자산 인덱스
이 문서는 키프레임 데이터 구조체의 다양한 변수와 활용 예제를 설명합니다.