본문 바로가기

웹 디자인에 생동감을 불어넣는 lottie 애니메이션 따라해보기

by 차니파파 2024. 11. 8.

로티 애니메이션 나도 쉽게 따라해보기

로티 애니메이션(Lottie Animation)은 복잡한 애니메이션을 간단하게 만들고, 다양한 플랫폼에서 최적화된 방식으로 사용할 수 있어 요즘 많은 주목을 받고 있습니다. 이번 글에서는 로티 애니메이션이 무엇인지, 그리고 간단한 로티 파일을 무료로 다운로드하고 실행해보는 방법을 소개해 드리겠습니다.

1. 로티 애니메이션 소개

로티 애니메이션은 2017년 Airbnb 디자인 팀에 의해 개발된 기술로, 애프터 이펙트(After Effects)로 만든 애니메이션을 JSON 파일 형식으로 저장한 것입니다. 이 애니메이션은 HTML, 모바일 앱(Android, iOS)에서 쉽게 불러와 사용할 수 있어 웹과 앱 디자인에서 폭넓게 활용됩니다. 파일 크기가 작고, 반응형 처리도 쉬우며, 부드러운 애니메이션을 제공합니다. 이러한 장점 덕분에 사용자 경험(UX)을 한 단계 업그레이드하는 데 매우 유용합니다.

2. 로티 애니메이션 vs. SVG 애니메이션

로티 애니메이션과 SVG 애니메이션은 둘 다 벡터 기반으로, 웹에서 주로 사용되는 애니메이션 방식이지만 각각의 장단점이 있습니다. SVG 애니메이션은 간단한 애니메이션에 적합합니다. SVG는 주로 CSS나 JavaScript를 통해 애니메이션을 구현해야 하는데, 이는 복잡한 타임라인이나 여러 요소가 조화를 이루는 애니메이션을 제어하는 데 상당한 부담을 줄 수 있습니다. 복잡한 애니메이션을 표현하는 데 레이어나 타임라인 제어의 복잡성, 제한된 효과 등으로 인해 한계가 있습니다.

반면, 로티 애니메이션은 애프터 이펙트로 제작된 복잡한 애니메이션을 JSON 파일로 경량화하여 저장하기 때문에 다양한 플랫폼에서 쉽게 불러와 사용할 수 있습니다. JSON 파일 형식은 데이터 기반으로 경량화되어 있으며, 다양한 플랫폼에서 코드로 간편히 제어할 수 있어 복잡한 애니메이션 효과를 손쉽게 구현할 수 있습니다. 로티는 부드러운 움직임과 복잡한 애니메이션을 적은 용량으로 유지하면서 다양한 플랫폼에서 쉽게 사용할 수 있다는 점에서 더 많은 이점을 제공합니다.

3. 로티 애니메이션의 장점

로티 애니메이션은 크기가 작아 로딩 속도를 크게 방해하지 않으며, SVG나 GIF 등과 비교했을 때 훨씬 매끄러운 움직임을 제공합니다. 또한 다양한 장치와 플랫폼에서 호환되기 때문에 복잡한 애니메이션을 하나의 파일로 여러 환경에서 사용할 수 있다는 점이 큰 매력입니다.

4. 로티 애니메이션 준비 및 만들기

로티 애니메이션을 만들기 위해서는 몇 가지 도구가 필요합니다. 애프터 이펙트(After Effects)와 JSON 파일을 내보낼 수 있는 Bodymovin 플러그인이 필요합니다. 애프터 이펙트를 이용해 간단한 애니메이션을 만든 후, Bodymovin 플러그인을 통해 JSON 형식으로 내보낼 수 있습니다. 하지만 오늘은 직접 만드는 대신 무료로 제공되는 로티 애니메이션을 다운로드하고, 실행해 보는 방법을 소개합니다. 처음 로티 애니메이션을 배우는 분들은 LottieFiles라는 플랫폼을 추천합니다. LottieFiles에서는 다양한 무료 리소스를 제공하며, 이를 통해 간단한 애니메이션을 다운로드하고 쉽게 실행해 볼 수 있습니다.

https://lottiefiles.com/

1731031350121.json
0.01MB

 

5. 로티 애니메이션 적용하기

로티 애니메이션 파일은 JSON 형식으로 된 애니메이션 파일이라고 보면 됩니다. 이번에는 이 JSON 파일을 HTML에 불러와서 애니메이션을 실행하는 방법을 아주 쉽게 설명해 드리겠습니다. 아래의 URL에서 로티 애니메이션 파일(JSON)을 다운로드한 후, 제공된 HTML 파일에 연결해 보세요. 이 과정을 통해 애니메이션이 실제로 웹에서 어떻게 작동하는지 이해할 수 있습니다.

로티 애니메이션 파일 다운로드

 

JSON 파일을 브라우저에서 확인하려면 별도의 HTML 파일이 필요합니다. 이 HTML 파일을 사용해서 직접 애니메이션을 확인해 보세요:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Lottie Animation Preview</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/bodymovin/5.10.2/lottie.min.js"></script>
    <style>
        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            background-color: #f0f0f0;
            margin: 0;
        }
        #animationContainer {
            width: 700px;
            height: 700px;
            background-color: #ff0000;
        }
    </style>
</head>
<body>
    <div id="animationContainer"></div>
    <script>
        document.addEventListener("DOMContentLoaded", function() {
            var animation = lottie.loadAnimation({
                container: document.getElementById('animationContainer'), // DOM element to contain the animation
                renderer: 'svg',
                loop: true,
                autoplay: true,
                path: './1731031350121.json' // Path to the Lottie JSON file
            });
        });
    </script>
</body>
</html>

위 코드를 사용하여 JSON 파일을 로컬 환경에 연결하면 쉽게 로티 애니메이션을 실행해 볼 수 있습니다. 하지만, 단순히 HTML 파일을 브라우저에서 열기만 해서는 JSON 파일을 불러오지 못할 수 있습니다. 이럴 때는 간단한 서버가 필요합니다.

 

먼저 터미널을 열고, JSON 파일과 HTML 파일이 있는 폴더로 이동합니다. 예를 들어, 파일이 'Downloads' 폴더에 있다면 다음 명령을 사용하세요:

cd ~/Downloads

 

그런 다음, 파이썬을 이용해 로컬 서버를 실행합니다: 파이썬을 이용해 로컬 서버를 실행하는 방법은 다음과 같습니다:

python -m http.server

 

이 명령을 통해 로컬 서버를 실행한 후, 브라우저에서 다음 URL로 접속하세요:

http://localhost:8000/your_file_name.html

 

여기서 'your_file_name.html'을 실제 HTML 파일의 이름으로 바꾸어 입력하면 됩니다. 이렇게 하면 JSON 파일을 정상적으로 불러와 애니메이션을 확인할 수 있습니다.

 

반응형

댓글