【Unity】既存のAnimationをRead-Onlyから編集できるようにする
概要
Unityで既存のAnimationをキャラクターにAttachする際、Animationで定義されているPropertyなどがCharacter側にない場合にエラーが出たりしました。
そのため、Animation側で不要なPropertyを削除しようと思ったのですが、Read-Onlyで消せないという事象に遭遇したため、Read-Onlyを回避してPropertyを削除する方法について調べました。
環境
Windows10
Unity 2020.1.f1
Read-Onlyになる事象
Standard AssetesのThirdPersonCharacterを例に説明します。
Assets > StandardAssets > Characters > ThirdPersonCharacter > Animationの中のHumanoidIdleを選択してダブルクリックします。
すると、Animationのタブが開き、アニメーションのPropertyが並んでいます。しかしオブジェクト名(HumanoidIdle)の文字の横にRead-Onlyとの表示がり、各 Property を右クリックしてもRemove Propertyが非活性の状態になって触ることができません。
そのため、このままではPropertyを全く編集できません。
Read-Onlyを回避する方法
上記のような症状を回避するために、コピーを作成してそれを編集するという方式を試します。
まず、編集したいAnimationを選択した状態でCtrl + Dを押します。
すると、Animationのコピーが出来上がります。F2キーで名前の変更が可能です。
コピーしたAnimationをダブルクリックします。
すると、Ready-Onlyの文字が消え、プロパティなども編集可能になります。
オブジェクトにアタッチする場合はこのコピーをアタッチすることで、好きなようにプロパティを編集したAnimationを使うことができます。
以上
Unityを一から学ぶのにおすすめの本はコチラ
助かりました!
blenderで作成したFBXに付いているアニメーションクリップがUnityで編集できず困っておりましたが、この記事のおかげで解決いたしました! ありがとうございました。