AnimationState has broken summaries. (Maybe just a JetBrains Rider thing). For example: ClearListenerNotifications in AnimationState is missing a "/// </summary>" at the end of its summary: "The 'summary' start tag on line 2 position 67 does not match the end tag of 'member'. Line 4, position 55". Which makes the summary not show up in Rider.

Also Delay... and AlphaAttachmentThreshold, TimeScale etc has issues too with their summaries, and many other. Rider can't get their summary, so when I hover over them I don't get any info.

Related Discussions
...

@PeterBacall Thanks for bringing this to our attention. We will see if we can get a complete list of documentation tag errors to fix everything.

Maybe just a JetBrains Rider thing

Yes.

@PeterBacall We have just fixed multiple issues with the spine-csharp documentation tags in this commit. The changes will be included in the next spine-unity package release. Please do let us know in case you stumble upon any remaining issues in the future that we might have overlooked. Thanks again for reporting!

    Harald Glad to hear, thank you! 🍻 Edit: that's a lot of summaries fixed, thanks again

    13 jours plus tard

    Harald
    Stumbled upon some non working summaries/comments (still in Rider): TimeScale (float), Alpha(float), SetMixDuration (void), IsEmptyAnimation (bool), AlphaAttachmentThreshold (float), Delat (float). See screenshot and some suggested fixes that makes it work from my end. If I'm not allowed to post this stuff for any reason please let me know.

    No clue if good/bad, but AI suggested fixes in Rider:
    public float TIME SCALE:

    /// <summary>
    /// <para>
    /// Multiplier for the delta time when this track entry is updated, causing time for this animation to pass slower or
    /// faster. Defaults to 1.
    /// </para>
    /// <para>
    /// Values &lt; 0 are not supported. To play an animation in reverse, use <see cref="Reverse"/>.
    /// </para>
    /// <para>
    /// <see cref="TrackEntry.MixTime"/> is not affected by track entry time scale, so <see cref="TrackEntry.MixDuration"/> may need to be adjusted to
    /// match the animation speed.
    /// </para>
    /// <para>
    /// When using <see cref="AnimationState.AddAnimation(int, Animation, bool, float)"/> with a <c>Delay</c> &lt;= 0, the
    /// <see cref="TrackEntry.Delay"/> is set using the mix duration from the <see cref="AnimationStateData"/>, assuming time scale to be 1. If
    /// the time scale is not 1, the delay may need to be adjusted.
    /// </para>
    /// <para>
    /// See AnimationState <see cref="AnimationState.TimeScale"/> for affecting all animations.
    /// </para>
    /// </summary>

    public float ALPHA:

    		/// <para>
    		/// Values &lt; 1 mix this animation with the skeleton's current pose (usually the pose resulting from lower tracks). Defaults
    		/// to 1, which overwrites the skeleton's current pose with this animation.
    		/// </para>
    		/// <para>
    		/// Typically, track 0 is used to completely pose the skeleton, then alpha is used on higher tracks. It doesn't make sense to
    		/// use alpha on track 0 if the skeleton pose is from the last frame render.
    		/// </para>
    		/// </summary>

    Also I noticed that most of the <code> tags look weird in summaries. Rider AI suggested fixes makes it look better. (No this is not a commercial for AI, but as a lazy person I do like it, mostly)

    public float MIXDURATION

    /// <para>
    /// Seconds for mixing from the previous animation to this animation. Defaults to the value provided by AnimationStateData
    /// <see cref="AnimationStateData.GetMix(Animation, Animation)"/> based on the animation before this animation (if any).
    /// </para>
    /// <para>
    /// The <c>MixDuration</c> can be set manually rather than use the value from
    /// <see cref="AnimationStateData.GetMix(Animation, Animation)"/>. In that case, the <c>MixDuration</c> can be set for a new
    /// track entry only before <see cref="AnimationState.Update(float)"/> is first called.
    /// </para>
    /// <para>
    /// When using <see cref="AnimationState.AddAnimation(int, Animation, bool, float)"/> with a <c>Delay</c> &lt;= 0, the
    /// <see cref="TrackEntry.Delay"/> is set using the mix duration from the <see cref="AnimationStateData"/>. If <c>mixDuration</c> is set
    /// afterward, the delay may need to be adjusted. For example:
    /// </para>
    /// <para><c>entry.Delay = entry.previous.TrackComplete - entry.MixDuration;</c></para>
    /// <para>
    /// Alternatively, <see cref="SetMixDuration(float, float)"/> can be used to recompute the delay:
    /// </para>
    /// <para><c>entry.SetMixDuration(0.25f, 0);</c></para>
    /// </summary>```

      @PeterBacall Thanks for the extensive report. Please note however that all the above issues have been fixed by the mentioned commit. Did you forget to update your spine-unity package or forget to get the latest package version from the git repo?

        Harald
        Haha I am stupid, I was in another project that didn't have the latest update yet... 😅 Thanks again for your hard work! Sorry to waste time

        @PeterBacall No problem, thanks for taking the time to write such an extensive report, always much appreciated! 🙂