ピクセルアートをasepriteツールでアニメーション化する
最初に animation_workflow_guide を呼び出します:use_case="character"、"idle"、または "environment" を使用します。
1. ループを決定する
-
ユーザーが開いているファイルでアニメーション化します。 ファイルが小さすぎる、またはフレーム数が少なすぎる場合は、同じファイル上で
resize_canvasとadd_framesを使用します。create_canvasや Lua のSprite()で新しいスプライトを作成しないでください(aseprite-live スキルを参照)。 -
長さとタイミング。 持続時間 = フレーム数 × フレーム時間。一般的な選択は、環境ループには 8 フレーム × 120 ms(約 1 秒)、待機ループには 4~6 フレーム × 100~150 ms、歩行ループには 6~8 フレームです。
-
持続時間。
add_frames(count, duration_ms)を使用し、次にset_frame_duration_allで設定します。 -
タグ。 各ループに
set_tagで名前を付け(例:idleやwalk)、export_tagで個別にエクスポートできるようにします。
2. 最初に静的なレイヤー
まず静止フレームを完成させます。ピクセルアートスキルに従ってください。その後、propagate_cels を呼び出して、動かないすべてのレイヤー(背景、家具)を全フレームにコピーします。その後、動くレイヤーのみを再描画します。
3. 適切な方法で動かす
| 動くもの | 方法 |
|---|---|
| キャラクター、生き物 | ポーズ・トゥ・ポーズ。各キーポーズを自身のフレームに再描画します:予備動作、アクション、フォロースルー。copy_frame を使用し、次に erase_region で動く部分を消去し、draw_rows で再描画します。全身を動かします。空中にいない限り、足は1本の地面ライン上に留めます。 |
| 柔らかい体(スライム、ゼリー) | 30~50%のスカッシュ&ストレッチ。空中のフレームごとに形状を変更します。 |
| 剛体オブジェクト、セカンダリモーション | tween_cel_positions_eased、offset_cel_positions、または oscillate_cel_positions を使用します(雲、浮遊アイコン、揺れるボート)。 |
| 回転部分(扇風機、風車) | 2~4のポーズを描き、copy_cel で交互に配置します。 |
| 環境エフェクト(蒸気、キラキラ、画面コンテンツ、点滅LED) | フレームごとに小さなピクセルセットを再描画します。粒子が上昇するにつれてアルファを減衰させます。 |
生き物の主要な動きにトゥイーンを使用しないでください。
4. ループをシームレスにする
- 最後のフレームは最初のフレームにスムーズに戻る必要があります。 粒子の場合は、
(frame + offset) % Nの位置を使用します。スクロールの場合は、ループ全体でちょうど1周期分移動させます。 - ポップバックを避ける。 8px 移動してから突然戻ると、グリッチのように見えます。前後の揺れを使用するか、キャンバス幅全体を移動させて、画面外に出て再入するようにします。
render_onion_skinで連続性を確認します。compare_framesとget_boundsを使用して、何がどの程度移動したかを確認します。
5. レビューとエクスポート
- レビュー。
view_sprite(frames="1-8")を呼び出して全フレームを並べて表示し、audit_animationまたはvalidate_sceneで欠落したセルを検出します。 - エクスポート。
export_animation(output.gif, scale=4-8, background="#...")で共有可能なGIFを作成します。単一ループの場合はexport_tagを使用します。 - ライブモードでは、ユーザーはAseprite内でEnterキーを押してアニメーションを再生することもできます。