Jump to content

Animation priority documentation not quite right.


animats
 Share

You are about to reply to a thread that has been inactive for 1805 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

Minor note: The Wiki article on animation priority, clearly written by users trying to figure out how it works. says "If there are multiple animations with the highest priority, then the animation which was started most recently will be effective." This isn't really true. If the viewer was watching when the second animation started, the new animation does override the first one. But it doesn't stay overridden. Log out and log back in, and the order may change. Or arrive on scene where the animation is already playing. Animations are a persistent property, but their order of start may not be.

So, don't run two animations with the same priority on the same joints at the same time. Won't work right.

Example:

animationclashbeforerelog.png.eb6ada9a605ad754ee94890f058cbc48.pnganimationclashafterrelog.png.ab9f4aa5fadf7984f6504251b67d6263.png

Before and after a logout and login

This is an animesh character running a priority 4 walk and a priority 4 tray carry. The tray carry pose only affects the right arm. The tray carry animation was turned on after the walk animation. Looks fine. But log out and log back in, and the tray carry animation is no longer showing.

Two users looking at the same avatar or animesh may see different things, depending on who was around when the animation was triggered. This tends to come up with animesh, which often have long-running animations.

 

Edited by animats
  • Thanks 1
Link to comment
Share on other sites

As I understand it, animations are run by the viewer, so I don't really see the contradiction. You've set up a race condition where you can't control which animation is started first. It's completely agnostic to whatever happened before it turned up, or wasn't looking. I haven't checked, but you can probably just reproduce this with the resync animations option.

This is a good use case (imho, the ONLY use case) for priority 5.

Link to comment
Share on other sites

18 hours ago, Ana Stubbs said:

You've set up a race condition where you can't control which animation is started first.

Exactly. The SL system is behaving reasonably, and the wiki is giving bad advice. Not the wiki author's fault; there's no official documentation on this.

Quote

This is a good use case (imho, the ONLY use case) for priority 5.

I thought the uploader limited animation priorities to 4 now, but at some time in the past, larger values could slip through. No?

Link to comment
Share on other sites

i don't remember now exactly where I read it but Niran (Black Dragon) mentioned that the LL .anim format allows priority 5 and priority 6.  Niran was talking about the Poser tool in his viewer at the time, and that LL had told him that they would be interested in a code submission if he Niran wrote a .anim exporter for it, rather than the LLSD exporter that is currently in Black Dragon. Niran said at the time that he didn't think he would do the .anim exporter as its a lot of work and his Poser tool can load and save the LLSD files, so he didn't see why he would spend that time just for static poses

i am pretty sure this is right about priority 6, but I might be misremembering it 

Link to comment
Share on other sites

I suspect this is why there are some animation conflicts on vehicles. An AO anim at priority 4 is fighting with a sit anim at priority 4. When you cross a region boundary, who wins in the new region is somewhat random.

If you sit on a fixed object, the sit anim usually wins, at least for everyone who was around when the sit took place.

The object sat on can turn off all animations if it wants, but then you lose low priority motions such as eye blinks and breathing. What's best practice here?

Link to comment
Share on other sites

28 minutes ago, animats said:

I suspect this is why there are some animation conflicts on vehicles. An AO anim at priority 4 is fighting with a sit anim at priority 4. When you cross a region boundary, who wins in the new region is somewhat random.

If you sit on a fixed object, the sit anim usually wins, at least for everyone who was around when the sit took place.

The object sat on can turn off all animations if it wants, but then you lose low priority motions such as eye blinks and breathing. What's best practice here?

On 5/16/2019 at 6:48 PM, animats said:

 

Best practice is to turn your AO off.

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 1805 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...