애니메이션 곡선 (Animation Curves) 설명
애니메이션 곡선은 애셋 브라우저 (Asset Browser)에서 자산으로 설정할 수 있으며, 애니메이션 곡선 편집기 (Animation Curve Editor)를 사용하여 조정할 수 있습니다. 이 곡선은 시퀀스 편집기 (Sequences Editor)에서 트랙을 제어하는 데 사용되며, 게임 내에서 다양한 값들을 시간에 따라 변경하는 데에도 활용됩니다.
예를 들어, 버튼이나 물체의 위치 이동, 색상 변화 등 여러 형태의 애니메이션 효과를 만들 수 있습니다. 또한, 런타임 중에 다음 함수들을 사용하여 자신만의 애니메이션 곡선을 만들 수 있어, 매우 유연한 도구가 됩니다.
애니메이션 곡선을 위한 사용 가능한 함수 목록
| 함수 이름 | 설명 |
|---|---|
animcurve_get |
애니메이션 곡선 가져오기 |
animcurve_get_channel_index |
채널 인덱스 가져오기 |
animcurve_get_channel |
채널 가져오기 |
animcurve_channel_evaluate |
채널 평가하기 |
animcurve_create |
애니메이션 곡선 생성하기 |
animcurve_exists |
애니메이션 곡선 존재 확인하기 |
animcurve_channel_new |
새로운 채널 생성하기 |
animcurve_point_new |
새로운 포인트 생성하기 |
animcurve_destroy |
애니메이션 곡선 삭제하기 |
활용 및 응용 예제
1. 버튼의 페이드 효과
버튼이 클릭될 때 점진적으로 나타나거나 사라지는 페이드 효과를 사용해보세요.
// 버튼 클릭 시 페이드 인 효과
if (button_clicked) {
curve = animcurve_create();
animcurve_channel_new(curve, "opacity");
for (var i = 0; i <= 100; i++) {
animcurve_channel_evaluate(curve, "opacity", i);
}
}
2. 물체의 위치 이동
게임에서 캐릭터나 물체가 부드럽게 이동하도록 애니메이션 곡선을 활용할 수 있습니다.
// 물체를 좌표 (100, 200)로 이동
var curve = animcurve_create();
animcurve_channel_new(curve, "position");
animcurve_point_new(curve, 0, position.x, position.y);
animcurve_point_new(curve, 1, 100, 200);
for (var t = 0; t <= 1; t += 0.01) {
var new_pos = animcurve_channel_evaluate(curve, "position", t);
position = new_pos;
}
3. 색상 변화 효과
물체의 색상을 점진적으로 변화시키는 예제입니다.
// 색상을 빨간색에서 파란색으로 전환
var curve = animcurve_create();
animcurve_channel_new(curve, "color");
animcurve_point_new(curve, 0, c_red);
animcurve_point_new(curve, 1, c_blue);
for (var t = 0; t <= 1; t += 0.01) {
var new_color = animcurve_channel_evaluate(curve, "color", t);
sprite_set_color(my_sprite, new_color);
}
이 문서에서는 애니메이션 곡선의 기본 개념과 몇 가지 활용 예제를 설명하였습니다. 애니메이션 곡선을 활용하여 게임에서 더 다양한 효과를 만들어 보세요!