[flutter] 플러터 Lottie로 게임 애니메이션 구현하기

소개

플러터(Flutter)는 구글에서 개발한 UI 프레임워크로, 다양한 플랫폼에서 동작하는 앱을 개발할 수 있습니다. 이때, Lottie는 Airbnb에서 개발한 애니메이션 라이브러리로, JSON 형식의 애니메이션 파일을 사용하여 플러터 앱에서 멋진 애니메이션을 구현할 수 있습니다.

이번 포스트에서는 플러터에서 Lottie를 사용하여 게임 애니메이션을 구현하는 방법에 대해 알아보겠습니다.

세팅하기

먼저, 플러터 프로젝트에서 Lottie를 사용하기 위해 flutter_lottie 라이브러리를 pubspec.yaml에 추가해야 합니다.

dependencies:
  flutter:
    sdk: flutter
  flutter_lottie: ^0.5.1

설정이 완료되면, 터미널에서 flutter pub get 명령을 실행하여 의존성을 다운로드 받습니다.

애니메이션 파일 가져오기

Lottie로 구현할 애니메이션 파일을 준비해야 합니다. 많은 Lottie 애니메이션 파일이 온라인에서 무료로 제공되고 있으므로, 아래와 같은 웹사이트에서 다운로드 받을 수 있습니다.

다운로드 받은 애니메이션 파일은 프로젝트의 assets 디렉토리에 저장합니다.

애니메이션 구현하기

이제, 플러터 앱에서 Lottie 애니메이션을 구현할 수 있습니다.

먼저, Lottie.asset 위젯을 사용하여 애니메이션을 화면에 표시합니다. 애니메이션 파일의 경로는 assets 디렉토리 경로부터 시작해야 합니다.

import 'package:flutter/material.dart';
import 'package:flutter_lottie/flutter_lottie.dart';

class GameAnimationPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Game Animation'),
      ),
      body: Center(
        child: Lottie.asset(
          'assets/game_animation.json',
          width: 200,
          height: 200,
          fit: BoxFit.cover,
        ),
      ),
    );
  }
}

Lottie.asset 위젯은 width, height 속성을 통해 애니메이션의 크기를 조정할 수 있습니다. fit 속성은 애니메이션이 위젯의 영역을 어떻게 채울지 결정합니다.

실행하기

GameAnimationPage를 앱의 메인화면으로 설정하고 실행해보면, 애니메이션이 정상적으로 표시됩니다.

void main() {
  runApp(MaterialApp(
    home: GameAnimationPage(),
  ));
}

마무리

플러터에서 Lottie를 사용하여 게임 애니메이션을 구현하는 방법에 대해 알아보았습니다. Lottie를 활용하면 쉽게 멋진 애니메이션을 구현할 수 있으므로, 다양한 애니메이션을 시도해보세요. 참고로, Lottie는 다양한 애니메이션 조작 기능을 제공하기 때문에, 필요한 경우에는 문서를 참조하여 추가적인 기능을 활용할 수도 있습니다.