Pharan

1. SkeletonMecanim
SkeletonAnimator has been renamed to SkeletonMecanim
This is to make it easier to identify as a glance, and to maximize code completion utility when using one and not the other.
Existing prefabs and scenes should stay intact. But code needs to be updated to use "SkeletonMecanim" instead of "SkeletonAnimator".

2. Shaders
Spine-Unity's basic shaders now allow straight-alpha textures by checking the "Straight Alpha Texture" checkbox in the Material inspector. This will compile the shader as a shader variant (keyword _STRAIGHT_ALPHA_INPUT).

Spine/SkeletonGraphic (Premultiply Alpha) was renamed to Spine/SkeletonGraphic
Spine/SkeletonGraphic Tint Black (Premultiply Alpha) was renamed to Spine/SkeletonGraphic Tint Black

The old dedicated straight alpha shaders were removed.

3. Runtime and Editor, and Assembly Definition
If you want to utilize the new folder arrangement with the recommended assembly definition files, you can delete your old Spine-Unity runtime folder and import the latest unitypackage.
As usual, make sure you back up your project in case you lose some changes or something breaks in the process.

4. SpineAtlasAsset
AtlasAsset has been renamed to SpineAtlasAsset. This clarifies that the atlas source is a Spine/libGDX atlas, rather than something else. Coming soon is the option to use Unity's SpriteAtlas for packing, as well as other atlas source options.
Existing fields on components, prefabs and assets should remain intact.

5. Skeleton.FlipX/FlipY is now Skeleton.ScaleX/ScaleY
The Skeleton class now has ScaleX and ScaleY which replaces FlipX and FlipY.

Here is a summary to get an equivalent of the old behavior:
// To get the value
bool flipX = skeleton.ScaleX < 0;

// To set the value.
skeleton.ScaleX = flipX ? -1f : 1f;
the FlipX/FlipY properties are in the beta and marked as Obsolete, but will be removed on release.

6. BlendModeMaterials asset

SkeletonDataAssets now have an extensible asset system for doing extra processing to SkeletonData after it is loaded. One of these is the BlendModeMaterials asset.

A BlendModeMaterials asset defines what template Materials to use to generate the needed Screen and Multiply (and optionally, Additive) blend mode slots, then assigns those generated materials to the Attachments that are defined in a slot with special blend modes.

BlendModeMaterials assets stand as a more performant solution that better-handles multi-texture cases compared to the old SlotBlendModes component. SlotBlendModes is still useful for when you need to do instance-level material customization, and will not be removed from the runtime. However, in most basic cases, the BlendModeMaterials asset will be all you need.

This new module comes with a default "Default BlendModeMaterials" asset and Materials which will work out of the box. To use it, just add this "Default BlendModeMaterials" asset to your SkeletonDataAsset's new "Skeleton Data Modifiers" list in the inspector.

As usual, multiple blend modes will cause your rendered skeleton mesh to use multiple Materials. With that comes more draw calls and other associated behaviors that come with multi-material MeshRenderers in Unity.


// MORE TO FOLLOW...

You can download the beta unitypackage now from the download page: Spine Unity Download
For more info on the changes, see : spine-runtimes/CHANGELOG.md at 3.7-beta
User avatar
Pharan

Pharan
Posts: 5229


Return to Unity