Lottieアニメーションで、イラストを動かし、Webサイトに埋め込み

1. Lottieとは

Lottieは、JSONベースのアニメーションファイル形式です。これを使うと、静止画アセットを配信するのと同じくらい簡単に、アニメーションをあらゆるプラットフォームに配信できます。Lottieはどんなデバイスでも動作するサイズの小さなファイルで、ピクセル化を起こさずに拡大縮小できます。

 出典 : LottieFiles

2. Lottieのメリット

小さいファイルサイズ

Lottieアニメーションなら、GIFMP4のようなほかの形式と比べて、同じ品質を保ちながらファイルサイズをはるかに小さくできます。

無限に拡大縮小可能

Lottieアニメーションベクターベースです。そのため、解像度を気にすることなく拡大縮小できます。

マルチプラットフォームのサポートとライブラリ

どんな開発者にとっても、LottieHandoffはとても簡単です。Lottieアニメーションは、修正することなくiOSAndroidWebReact Nativeで使用できます。

インタラクティブ

Lottieアニメーションは、アニメーションの各要素にアクセスして操作できるようになっています。スクロールクリックホバーといったインタラクションに反応するインタラクティブアニメーションを作成することができます。

3. Lottieアニメーション作成方法

Lottieアニメーションで、イラストを動かし、Webサイトに埋め込む方法を紹介します。また、AfterEffectで、Lottieで使用できる基本的なアニメーションを紹介します。

まずは、Lottieアニメーションの作成から、Webサイト埋め込むまでの方法を紹介します。

3-1. アカウント作成

まずは、アカウントを作成します。LottieFilesのWebサイトの無料で始めるボタンをクリックします。ポップアップで、Create an acconutと表示されるので、ガイドに従ってアカウントを作成します。

LottieFilesのWebサイトの無料で始めるボタンをクリックして、ガイドに従ってアカウントを作成します。

3-2. アニメーション作成

まず、AIイラストを作成します。今回は、サッカーボールを作成しました。サイズは、実際の配置サイズを想定して作成します。

AIでイラストを作成

AfterEffectを開き、コンポジション新規コンポジションをクリックします。コンポジション設定が表示されるので、AIと同じ大きさのサイズで作成します。フレームレート24に設定し、デュレーションタイムラインの長さを設定します。AIデータをコピーし、AfterEffectコンポジションペーストします。

コンポジション設定で、AIと同じ大きさのサイズで作成

AIデータをコピーし、AfterEffectコンポジションペースト

アニメーションをつけていきます。トランスフォーム回転をクリックし、有効にします。タイムライン00:0003:00の位置にキーフレームを打ちます。03:00キーフレームクリックして、回転1に設定します。アニメーションを確認してイラストが3秒かけて回転する、ループアニメーションになっているか確認します。

タイムライン00:0003:00の位置にキーフレームを打ち、03:00キーフレーム回転1に設定

3-3. 書き出し

JSONファイルに書き出します。ファイルエクステンションBodymovinをクリックします。書き出したいコンポジションSelectedにチェックを入れます。右上Project Settingをクリックし、Use comp nameにチェックを入れ、コンポジションネームファイル名になるように設定し、Closeボタンをクリックします。右の3点リーダーをクリックし、保存場所を設定し、保存ボタンをクリックします。

これで、書き出し設定は終了です。左上のRederボタンをクリックし、書き出します。

Bodymovinをクリック

書き出したいコンポジションSelectedにチェック

Project SettingUse comp nameにチェック

3点リーダーをクリックし、保存場所を設定

左上のRederボタンをクリックし、書き出し

3-4. 埋め込み

Lottie FilesのWebサイトを開き、ログインします。右上のマイダッシュボードボタンをクリックします。右のUpload filesをクリックして、アップロード画面を表示します。browseをクリックして、アップロードするファイルを選択し、開くボタンをクリックし、JSONファイルを読み込みます。

ログインして、右上のマイダッシュボードボタンをクリック

Upload filesをクリック

browserをクリック

アップロードするファイルを選択

右のHandoffをクリックします。Embed HTMLに埋め込み用のコードが表示されるので、コピーして、HTMLファイルにペーストします。インラインサイズを指定する箇所があるので、Webデザインに合わせて、サイズを指定します。

Handoffをクリック

Embed HTMLに埋め込み用のコードが表示されるので、コピーして、HTMLファイルにペースト

4. ベジェアニメーション

色々なアニメーション作成方法を紹介します。まず、ベジェ曲線が伸縮されるアニメーションを紹介します。

前項で作成したコンポジション複製します。イラストレイヤーの、右上の追加ボタンをクリックします。セレクターが表示されるので、パスのトリミングを選択します。レイヤーコンテンツパスのトリミング1が表示されます。開始点ストップウォッチをクリックし、タイムライン00:0000:12キーフレームを追加します。00:00キーフレームをクリックし、開始点100に設定します。

レイヤーの、右上の追加ボタンをクリックし、パスのトリミングを選択

開始点タイムライン00:0000:12キーフレームを追加し、00:00キーフレームをクリックして、開始点100に設定

次に、終了点ストップウォッチをクリックし、タイムライン02:1203:00キーフレームを追加します。02:12キーフレームをクリックし、開始点0に設定します。ループアニメーションで、0.5秒の間隔を空けるため、開始点00:06から00:18に、終了点02:06から02:18に変更します。アニメーションを再生し確認し、OKなら書き出します。

終了点の、タイムライン02:1203:00キーフレームを追加し、02:12キーフレームをクリックして、開始点0に設定

ループアニメーションで、0.5秒の間隔を空けるため、開始点00:06から00:18に、終了点02:06から02:18に変更

5. カラーアニメーション

が変化するアニメーションです。前項で作成したアニメーションコンポジション複製します。イラストレイヤーコンテンツ内の全てのグループ(パス)を選択し、追加をクリックします。グループ12を展開し、カラーストップウォッチをクリックします。タイムライン00:1201:0002:0002:12キーフレームを追加します。00:1202:12キーフレームをクリックし、カラーを元のブルーに、01:0002:00キーフレームをクリックし、カラーレッドに設定します。

レイヤーコンテンツ内の全てのグループを選択し、追加をクリック

タイムライン00:1201:0002:0002:12キーフレームを追加し、00:1202:12キーフレームをクリックし、カラーを元のブルーに設定

01:0002:00キーフレームをクリックし、カラーレッドに設定

カラータイムラインコピーします。他のグループカラータイムライン00:12カーソルを合わせ、ペーストします。アニメーションを再生し確認し、OKなら書き出します。

カラータイムラインコピーし、他のグループカラータイムライン00:12カーソルを合わせ、ペースト

6. パスアニメーション

パスに沿ってイラストが動くアニメーションです。まず、前項で作成したアニメーションコンポジション複製します。コンポジション設定を開き、サイズを幅400px高さ400pxに変更します。新たにシェイプレイヤーを作成し、ペンツールイラストを動かしたい導線を作成します。シェイプ1パス1パスを選択し、コピーします。

コンポジション設定を開き、サイズを幅400px高さ400pxに変更

ペンツールでイラストを動かしたい導線を作成し、コピー

イラストのレイヤーを再表示し、トランスフォーム位置にペーストし、シェイプレイヤー非表示にします。キーフレームの最後が02:00になっているので、選択して、03:00まで移動します。これで、ボールがバウンドするアニメーションが作成されます。アニメーション再生し、画面からはみ出ている場合、コンポジション内の位置ベジェ曲線を変更して調整します。アニメーションを再生し確認し、OKなら書き出します。

イラストレイヤーの、トランスフォーム位置ペースト

02:00キーフレームを選択して、03:00まで移動

画面からはみ出ている場合、コンポジション内の位置ベジェ曲線を変更して調整

7. まとめ

以上で今回のBLOGは終了です。AIで作成したイラストを自由に動かせるので、表現の幅が大きく広がります。データサイズ小さいので読み込みが早いので、色々な場所に組み込むことができます。

今回紹介したアニメーションはほんの一部なので、AfterEffectで色々なアニメーションを作成することができます。メインアイキャッチなどに有効なので、Webサイトに導入してみてはいかがでしょうか。