Amazonで商品を見るセール会場へ

Unity Anima2Dの使い方【旧版資料】|設定・IK・移行前の確認

Anima2Dは開発・サポートが終了した旧ツールです。新規制作ではUnityの2D Animationパッケージを検討してください。このページは、Anima2Dを使う既存プロジェクトの設定を読むための資料として残しています。

Unityは2021年1月に開発終了とAsset Storeからの削除予定を告知し、AssetDatabase v2を既定で使う2019.3以降ではサポートしないと説明しています。「Unity 5.5以降なら現行版でも使える」という意味ではありません。出典:UnityのAnima2D終了告知。

掲載している旧画像には、ファイル名に2017年の日時が含まれる操作画面と動作例があります。正確な撮影時のEditor・Anima2D版は原記録を確認できていません。今回、旧環境での再実行やUnity 6での再現は行っていないため、元のプロジェクトと導入済みツールの版を確認して読む資料です。

目次

新規制作で使う2D AnimationとAnima2Dの違い

現在の公式ツールはPackage Managerで管理する2D Animationです。Anima2DのSpriteMesh Editor・Sprite Mesh Instanceと、2D AnimationのSkinning Editor・Sprite Skinは別の仕組みです。メニュー名を読み替えるだけで同じデータを使えるとは限りません。

Unity 6.3向けの公式対応表は2D Animation 13.xを案内しています。Editorの完全な版番号を確認し、その版に対応するパッケージの資料を使ってください。2D AnimationとPSD Importerを併用する場合は、レイヤーからSpriteとPrefabを作るPSBの取り込みも選択肢になります。出典:2D Animation 13.0の概要・対応版。

既存Anima2Dの移行では、まず複製したプロジェクトで代表的なキャラクターを1体だけ比較します。Sprite・ボーン・ウェイトに加え、IK、描画順、Animation Clipを確認します。2021年の開発者による移行案内もIKやSprite Renderer、Sprite Skinの手動調整に触れています。2D Animation内のAsset Upgraderを、Anima2Dの完全な自動変換ツールと解釈しないでください。

旧版の作例:掲載画像の読み方

以下のGIFは元記事に残されていたAnima2Dの動作例です。今回作成・撮影した成果物ではありません。以降の操作は旧ツールの設定を確認するために掲載します。

Anima2Dで制作した2Dキャラクターのアニメーション動作例。
Anima2Dで作成した2Dアニメーションの動作例。

旧版を確認する前の準備

元のProjectVersion.txt、Packages、Anima2Dの導入フォルダー、SpriteMesh・Prefab・Animation Clipを含めて保存します。コンポーネントがMissingになる場合は、参照しているスクリプトと導入版を確認し、キャラクター全体を作り直す前に元環境との差を切り分けます。

現在のAsset Storeから新しく導入できる前提では進めません。すでに保存している正規のアセットと元の環境を確認します。旧手順の再現のためだけに本番プロジェクトを更新したり、2019.3以降でAnima2Dの互換性を保証したりしないでください。

旧版:SpriteMesh・ボーン・ウェイトの設定

1. スプライトの設定

  1. テクスチャを用意
  2. InspectorでSprite ModeをMultipleに設定
  3. Sprite Editorでトリミングし、Pivotの位置を調整
Sprite Editorによるテクスチャのトリミングとピボット位置の設定画面。

2. スプライトメッシュの作成

  1. 用意したスプライトを選択
  2. 右クリック → Create → Anima2D → SpriteMesh
  3. SpriteMeshが生成される
選択したスプライトからSpriteMeshを生成する操作手順。

3. メッシュとボーンの配置

  1. 空のGameObjectを作成
  2. 生成したSpriteMeshをドラッグ&ドロップで配置
  3. GameObject → 2D Object → Boneでボーンを生成・配置
  4. ボーンを階層化し、Child(子)を指定して接続
GameObjectにSpriteMeshとボーンを配置し階層構造を設定した画面。

4. メッシュの分割

  1. Window → Anima2D → SpriteMesh Editorを開く
  2. Sliceボタンを押してApplyでメッシュを自動分割
  3. Sliceをオフにして、頂点をドラッグして手動調整
SpriteMesh Editorでメッシュを自動分割し頂点を手動調整する様子。

5. バインドとウェイト調整

  1. SpriteMeshを選択し、Sprite Mesh Instance(Script)のBonesにボーンを登録
  2. SpriteMesh Editorに戻りBindボタンを押す
  3. Overlayにチェックを入れるとウェイトがカラー表示される
  4. SmoothやAutoボタン、または頂点選択してInspectorで数値調整

「Number of SpriteMesh Bind Poses and number Bones does not match」を一律に無視しないでください。警告が出た直前の操作を記録し、Sprite Mesh InstanceのBonesの登録漏れ・参照切れと、メッシュに対応するボーンの構成を確認します。複製で再バインドを試す場合は、元のポーズ・位置・ウェイトを保存し、ボーンを動かして対象部分だけが追従するか比較します。

ボーンのバインド後にウェイト調整を行っている画面。
ボーンを回転させてメッシュが追従する様子を確認する画面。

6. IKのセットアップ

  1. ボーンを回転させてメッシュが追従することを確認
  2. 末端のボーンを選択 → GameObject → 2D Object → IK CCD
  3. 生成された青緑の円を動かしてIKの動作を確認

Num Bonesなどの設定は、導入版の表示と、動かしたいボーンの連鎖を確認して調整します。旧記事にあった「最大4」という上限は根拠を確認できていないため、固定の仕様として案内しません。IKのターゲットを少し動かし、意図した関節だけが追従するかを確認します。

ボーン末端にIK CCDを設定し動作を確認している画面。
Anima2Dで作成したアニメーションの動作例。

旧版:人型キャラクターのIKと描画順

Anima2Dでセットアップした人型キャラクターのアニメーション動作例。

基本の手順は同じですが、人型向けにはいくつかの注意点と設定ポイントがあります。

人型キャラクターのセットアップにおける設定ポイント。

IKの種類

IKタイプ用途
IK CCD汎用的な用途
IK Limb手足専用(2ボーン向け)

IK LimbのFlipは、ボーンの配置と関節の曲がる方向を見て設定します。足なら必ずオンと固定せず、ターゲットを移動し、膝が意図した方向へ曲がるかを確認してください。

描画順の制御

SpriteMeshのOrder in Layerの数値を調整して、パーツの前後関係をコントロールします。

描画順の制御やコントローラーを設置した人型キャラクターの設定画面。

コントローラーの設置

GameObject → 2D Object → Controlで空のGameObjectにアタッチし、ボーンを指定します。

腰や首に設置すると、全身や上半身の移動をまとめて制御できます。

旧版:警告・位置ずれを切り分ける

症状まず比較すること
Invalid AABB表示が正常だった状態と、メッシュ・Bounds・Transformの値を比較します。原因を特定せずBoundsを0へ変更する一律の対処は行いません。
バインド後に位置がずれるバインド時のポーズ、親子関係、Transformを保存済みの状態と比較します。Unbind・再Bindは複製で試し、位置と変形の両方を確認します。
袖などが追従しない登録したBones、対応するウェイト、親子関係を確認します。階層変更でAnimation Clipの参照に影響がないかも確認します。
トラブルシューティングや修正手順を示す画面。

旧版のポーズ・ベイク関連機能

機能説明
Pose Managerポーズを記録・復元できる。初期ポーズは必ず記録しておく
Spring Manager揺れもの表現に使用
Skinned Mesh Combinerメッシュを結合する機能。描画順・マテリアルと、変更前後の計測を確認します。
Onion Skin前後のフレームを半透明表示してアニメーション作成を補助
Bake AnimationIKによる動きを記録する機能。ベイク前後で同じ動きになるか確認します。性能向上は未測定です。

旧作例:ユニティちゃんの袖の階層

元記事のユニティちゃん作例では、袖のボーン階層を調整しています。すべてのサンプル版に同じ変更が必要とは限らないため、以下のボーン名と自分のモデルを照合してください。

調整前に複製と初期ポーズを保存します。以下はこの旧作例の階層変更であり、現在の公式2D Animationのセットアップ手順ではありません。

袖を追従させるためにサンプルのユニティちゃんのボーン階層を調整する手順。
  1. ボーン階層を展開
  2. Right Forearm ClothesをRight Forearmの子に移動
  3. Left Forearm ClothesをLeft Forearmの子に移動
ボーン階層内で衣服のパーツを前腕ボーンの子階層に移動した状態。

Unityのほかの記事は、まとめからご覧いただけます。

2Dとスプライトの記事は、ほかにもあります。

旧プロジェクトの保管と移行時の確認項目

Anima2Dの設定資料としてSpriteMesh・ボーン・ウェイト・IKの旧手順を維持しました。新規制作の2D Animationとは区別し、今あるアセットの保存と、代表キャラクターでの比較を先に行います。

移行後は、元のポーズと変形、歩行などのClip、IKターゲット、左右の描画順、Prefab参照を一つずつ確認します。再生画面で正常に見えても、対象プラットフォームのビルドで同じ結果になるかは別途確認が必要です。現在の移行結果や自動変換の成功を本記事では報告していません。

3Dモデルの制約はAnimation Riggingで扱います。2DのAnima2D・2D Animationの手順と混同しないようにしてください。

参考:

次に学ぶ・作業環境を選ぶ

学習を続けたい方や、作業環境を整えたい方は、目的に合うガイドをご覧ください。

Unityのおすすめ書籍

開発PCの選び方

周辺機器の優先度

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次