🎬 After Effects 익스프레션 기초: 모션그래픽의 마법 🪄
안녕하세요, 여러분! 오늘은 정말 흥미진진한 주제로 찾아왔어요. 바로 After Effects의 익스프레션에 대해 알아볼 거예요. 이거 진짜 대박인 거 아시죠? 😎 모션그래픽 작업할 때 없어서는 안 될 꿀팁이에요!
여러분, After Effects 써보신 적 있으신가요? 없다고요? 괜찮아요! 오늘 제가 여러분을 After Effects의 세계로 초대할게요. 특히 익스프레션이라는 초강력 기능에 대해 알아볼 거예요. 이거 하나만 알면 여러분도 모션그래픽 고수가 될 수 있어요! 🚀
🤔 익스프레션이 뭐길래?
자, 익스프레션이 뭔지 궁금하시죠? 간단히 말하면, 익스프레션은 After Effects에서 사용하는 일종의 미니 프로그래밍 언어예요. 이걸 사용하면 복잡한 애니메이션을 아주 쉽게 만들 수 있어요. 마치 마법 같죠? ✨
예를 들어, 여러분이 100개의 별을 반짝이게 하고 싶다고 해봐요. 일일이 키프레임을 찍어서 할 수도 있겠지만, 그럼 정말 손가락이 부러질 거예요. ㅋㅋㅋ 하지만 익스프레션을 사용하면? 몇 줄의 코드로 끝! 👌
🌟 익스프레션의 장점:
- 복잡한 애니메이션을 간단하게 만들 수 있어요
- 시간을 엄청나게 절약할 수 있어요
- 창의적인 표현이 가능해져요
- 파일 크기를 줄일 수 있어요
이제 좀 익스프레션에 대해 궁금해지셨나요? 그럼 이제부터 본격적으로 파헤쳐 볼게요! 🕵️♀️
🛠 익스프레션 시작하기
자, 이제 본격적으로 익스프레션을 시작해볼까요? 먼저 After Effects를 열고, 새 컴포지션을 만들어주세요. 그리고 나서 레이어 하나를 추가해볼게요. 예를 들어, 텍스트 레이어를 하나 만들어볼까요?
텍스트 레이어를 만들었다면, 이제 그 레이어의 속성을 살펴볼 거예요. 위치(Position), 크기(Scale), 불투명도(Opacity) 등 다양한 속성이 있죠? 이 중에서 위치 속성을 한번 클릭해볼게요.
🔑 익스프레션 활성화 방법:
- 원하는 속성을 선택해요 (예: 위치)
- Alt 키(Mac에서는 Option 키)를 누른 상태에서 속성 옆의 스톱워치 아이콘을 클릭해요
- 짜잔! 익스프레션 편집 필드가 나타났죠?
와! 이제 익스프레션을 입력할 준비가 됐어요. 어떤 느낌인가요? 마치 비밀 통로를 발견한 것 같지 않나요? ㅋㅋㅋ
📝 첫 번째 익스프레션 작성하기
자, 이제 우리의 첫 번째 익스프레션을 작성해볼 거예요. 아주 간단한 것부터 시작해볼게요. 텍스트를 왔다갔다 움직이게 만들어볼까요?
wiggle(2, 50);
이 한 줄의 코드로 뭔가 신기한 일이 일어났죠? 텍스트가 마구 흔들리기 시작했어요! 😲
wiggle 함수는 After Effects에서 제공하는 아주 유용한 함수예요. 첫 번째 숫자(2)는 초당 흔들리는 횟수, 두 번째 숫자(50)는 흔들리는 정도를 나타내요. 이 숫자들을 바꿔보면서 어떻게 변하는지 한번 실험해보세요!
💡 꿀팁: wiggle 함수는 정말 다양한 곳에 사용할 수 있어요. 위치뿐만 아니라 크기, 회전, 불투명도 등 거의 모든 속성에 적용할 수 있답니다!
어때요? 생각보다 쉽죠? 이제 여러분도 익스프레션의 첫 발을 내딛은 거예요! 👏👏👏
🧮 수학적 표현식 사용하기
익스프레션의 또 다른 강점은 바로 수학적 표현을 사용할 수 있다는 거예요. 수학이라고 해서 겁먹지 마세요! 아주 기본적인 수학만 알아도 충분해요. 😉
예를 들어, 시간에 따라 위치가 변하는 애니메이션을 만들고 싶다면 이렇게 할 수 있어요:
[time * 100, time * 50]
이 코드는 뭘 의미할까요? [x, y] 형태로 위치를 나타내는데, x 좌표는 시간에 100을 곱한 값, y 좌표는 시간에 50을 곱한 값이 돼요. 결과적으로 오브젝트가 대각선으로 움직이게 되죠!
time은 After Effects에서 제공하는 특별한 변수예요. 현재 시간(초 단위)을 나타내죠. 이걸 이용하면 시간에 따라 변하는 다양한 효과를 만들 수 있어요.
🚨 주의사항: 익스프레션에서는 숫자 뒤에 px나 %같은 단위를 붙이지 않아요. 그냥 숫자만 쓰면 돼요!
이런 식으로 수학적 표현을 사용하면, 복잡한 움직임도 간단하게 만들 수 있어요. 삼각함수를 사용하면 더 멋진 효과를 낼 수 있답니다! 😎
🔗 레이어 연결하기
이번에는 레이어들을 서로 연결하는 방법에 대해 알아볼게요. 이걸 이용하면 한 레이어의 움직임을 다른 레이어가 따라하게 만들 수 있어요. 완전 쩐다구요? ㅋㅋㅋ
예를 들어, "따라쟁이" 레이어를 만들고 싶다면 이렇게 할 수 있어요:
thisComp.layer("리더 레이어").position
이 코드는 "리더 레이어"라는 이름의 레이어의 위치를 그대로 가져와요. 그러면 현재 레이어가 리더 레이어를 똑같이 따라다니게 되죠!
thisComp는 현재 컴포지션을 가리키는 키워드예요. 이를 통해 같은 컴포지션 내의 다른 레이어나 속성에 접근할 수 있어요.
🌈 창의적인 아이디어: 이 기능을 이용해서 캐릭터의 눈을 만들어보는 건 어떨까요? 눈동자 레이어를 만들고, 마우스 커서를 따라다니게 만들면 재미있겠죠?
레이어 연결은 정말 다양한 상황에서 유용하게 쓸 수 있어요. 여러분의 상상력을 마음껏 발휘해보세요! 🚀
🎭 조건문 사용하기
이제 좀 더 고급 기술로 넘어가볼까요? 조건문을 사용하면 특정 조건에 따라 다른 동작을 하게 만들 수 있어요. 이게 바로 익스프레션의 진정한 힘이랍니다! 💪
예를 들어, 시간에 따라 레이어의 불투명도를 변경하고 싶다면 이렇게 할 수 있어요:
if (time < 2) {
0
} else if (time < 4) {
linear(time, 2, 4, 0, 100)
} else {
100
}
이 코드가 하는 일을 설명해드릴게요:
- 처음 2초 동안은 불투명도가 0%예요 (완전 투명)
- 2초에서 4초 사이에는 불투명도가 0%에서 100%로 서서히 변해요
- 4초 이후에는 불투명도가 100%로 유지돼요 (완전 불투명)
linear 함수는 시작값에서 끝값까지 부드럽게 변화하는 값을 만들어줘요. 여기서는 시간, 시작 시간, 끝 시간, 시작값, 끝값을 순서대로 넣어줬어요.
💖 재능넷 꿀팁: 이런 고급 기술을 익히면 여러분의 영상 편집 실력이 훨씬 좋아질 거예요. 재능넷에서 여러분의 실력을 뽐내보는 건 어떨까요? 다른 사람들에게 익스프레션 사용법을 가르쳐주는 강의를 열어보는 것도 좋은 아이디어예요!
조건문을 잘 활용하면 정말 복잡한 애니메이션도 간단하게 만들 수 있어요. 여러분의 상상력을 마음껏 펼쳐보세요! 🌈
🔄 루프 만들기
자, 이제 정말 쩌는 기술을 소개할게요. 바로 루프예요! 루프를 사용하면 반복되는 애니메이션을 아주 쉽게 만들 수 있어요. 😎
예를 들어, 레이어가 계속해서 위아래로 움직이게 하고 싶다면 이렇게 할 수 있어요:
y = Math.sin(time * 2) * 50;
[value[0], value[1] + y]
이 코드는 뭘 하는 걸까요?
- Math.sin 함수를 사용해서 -1에서 1 사이의 값을 만들어요
- 이 값에 50을 곱해서 움직임의 범위를 조절해요
- 원래의 x 좌표는 그대로 두고, y 좌표에만 이 값을 더해줘요
value는 현재 속성의 원래 값을 나타내는 키워드예요. 여기서는 원래의 위치 값을 가져오는 데 사용했죠.
🌱 성장 포인트: 삼각함수를 사용하면 자연스러운 움직임을 만들 수 있어요. sin 외에도 cos, tan 등 다양한 함수를 실험해보세요!
이런 식으로 루프를 만들면, 끝없이 반복되는 애니메이션을 아주 간단하게 만들 수 있어요. 완전 신기하지 않나요? ㅋㅋㅋ
🎨 색상 다루기
이번에는 색상을 다루는 방법에 대해 알아볼게요. After Effects에서는 색상도 익스프레션으로 조절할 수 있답니다! 😍
예를 들어, 시간에 따라 색상이 변하는 효과를 만들고 싶다면 이렇게 할 수 있어요:
r = Math.sin(time) * 127 + 128;
g = Math.sin(time + 2) * 127 + 128;
b = Math.sin(time + 4) * 127 + 128;
[r, g, b]
이 코드는 각각 빨강, 초록, 파랑 값을 시간에 따라 변화시켜요. 결과적으로 무지개처럼 색이 계속 변하는 효과가 나타나죠!
RGB 값은 0에서 255 사이의 숫자로 표현돼요. 여기서는 Math.sin 함수의 결과(-1에서 1 사이)에 127을 곱하고 128을 더해서 0에서 255 사이의 값을 만들었어요.
🎨 색상 팁: After Effects에서는 hexRgb() 함수를 사용해 16진수 색상 코드를 RGB 값으로 변환할 수 있어요. 예를 들어, hexRgb("#FF0000")은 [255, 0, 0]을 반환해요.
이런 식으로 색상을 다루면, 정말 화려하고 동적인 효과를 만들 수 있어요. 여러분만의 독특한 색상 변화를 만들어보세요! 🌈
📏 벡터와 공간
자, 이제 좀 더 심화된 내용으로 들어가볼게요. 벡터와 공간에 대해 알아볼 거예요. 이게 뭔 소리냐고요? 걱정 마세요, 생각보다 어렵지 않아요! 😉
After Effects에서 위치나 크기 같은 속성은 벡터로 표현돼요. 예를 들어, 위치는 [x, y] 형태의 2D 벡터고, 3D 레이어의 경우 [x, y, z] 형태의 3D 벡터예요.
벡터를 다루는 몇 가지 유용한 함수들이 있어요:
// 벡터의 길이 구하기
length([100, 100]); // 결과: 약 141.4
// 벡터 정규화하기 (길이를 1로 만들기)
normalize([100, 100]); // 결과: [약 0.707, 약 0.707]
// 두 벡터 사이의 거리 구하기
dist([0, 0], [100, 100]); // 결과: 약 141.4
이런 함수들을 사용하면 복잡한 공간 계산을 쉽게 할 수 있어요. 예를 들어, 두 레이어 사이의 거리에 따라 뭔가를 변화시키고 싶다면 dist() 함수를 사용할 수 있겠죠?