こちらは Spine-Unity 4.1 to 4.2 Upgrade Guide の日本語版です。
スケルトンの再エクスポートとspine-unity ランタイムファイルのアップグレードについて
これらについてはドキュメントの以下のセクションを参照してください:
spine-unity ランタイムドキュメント: spine-unity ランタイムのアップデート
spine-unity ランタイムドキュメント: 拡張UPMパッケージのアップデート
上記のセクションで、スケルトンの再エクスポート、他のspine-unity バージョン間でのアップグレード(3.8から4.0など)、spine-unity ランタイムファイルを安全にアップグレードする方法など、必要な手順が説明されています。
4.2のAPI変更にコードを適応させるには
APIの注意すべき変更点については、Changelog の C# および Unity セクションをご覧ください。
EsotericSoftware/spine-runtimesblob/4.2/CHANGELOG.md#c-2
4.2では、一部のメソッドの名前が変更されたり、置き換えられたりしています。
名前変更により存在しなくなったメソッドを使用したためにコードでコンパイルエラーが発生してしまった場合、Changelogから以下の点を確認し、コードを再び互換性のあるものにするために必要なステップを実行してください:
TrackEntry.AttachmentThreshold は TrackEntry.MixAttachmentThreshold に置き換えられました。
TrackEntry.DrawOrderThreshold は TrackEntry.MixDrawOrderThreshold に置き換えられました。
Skeleton.UpdateWorldTransform() は Skeleton.UpdateWorldTransform(Skeleton.Physics.Update) に置き換えられました。
補足:同じフレーム内で Skeleton.UpdateWorldTransform(Skeleton.Physics.Update) の呼び出しが続くことが確実な場合は、Skeleton.Physics.Update の代わりに Skeleton.Physics.Pose を引数に渡すことができます。
SkeletonGraphicRenderTexture.quadRawImage の出現箇所を quadMaskableGraphic に置き換え、タイプを RawImage から MaskableGraphic に変更してください。
4.1から4.2での挙動の変更点
挙動の変更点の一覧については、Changelogの C# および Unity セクションを参照してください。
EsotericSoftware/spine-runtimesblob/4.2/CHANGELOG.md#c-2
MeshGenerator は、スロットがアルファ0になり完全に透明になっているアタッチメントのレンダリングを避けるための新しい最適化オプションをデフォルトで受け取るようになりました。以前の動作に戻すには MeshGenerator.cs の #define SLOT_ALPHA_DISABLES_ATTACHMENT をコメントアウトしてください。このオプションを無効にする必要があるのは、透明性以外の目的で頂点カラーアルファを使用するカスタムシェーダーを利用するときだけのはずです。
SkeletonGraphic Material: CanvasGroupCompatible パラメーターに新しいマテリアル セットが追加されたため、デフォルトの SkeletonGraphic Material はすべて CanvasGroup Compatible が無効になるように変更されました。SkeletonGraphic で CanvasGroup Compatible を有効にしたい場合は、CanvasGroupCompatible マテリアルのサブディレクトリからそれぞれのマテリアルを割り当ててください。新しく追加されたボタン Detect Settings および Detect Material を使用すれば、適切なマテリアルを自動的に割り当てることができます。
新しいUnitypackageは、こちらのダウンロードページからダウンロードできます: spine-unity Download
もし、このガイドに注意すべき点や追加すべき点があれば、遠慮なくこのスレッドに投稿してください。他の方にも分かりやすいようにガイドを更新させていただきます。
このSpineの新しいリリースが皆さんに気に入っていただけることを、そしてより素晴らしいゲームを作るための一助になれることを願っています! 🙂