Jump to content

Whither AOs?


Qie Niangao
 Share

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

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

Recommended Posts

(This topic kinda straddles scripting and animation, and doesn't seem to quite fit in either of those forums, so I'll start it out here.)

I thought I'd solved animating my AV years ago, but Bento got me investigating again, and I found a few walks and stands that might be more natural for their Bento-ness. So I started snooping around at what AO scripts are being used, and it seems most are still using variants of ZHAO-II -- that is, they're still using explicit calls to llStartAnimation as opposed to the vastly more efficient llSetAnimationOverride.

Firestorm has a built-in, viewer-side AO, but there are reasons to prefer a scripted AO, and with llSetAnimationOverride those scripts should be about as efficient as a viewer AO (possibly better, in theory). But as best I can tell, the big-name animators haven't switched to the newer function.

If they haven't done it after four years, is there some known problem

It's not only the Linden viewer that lacks a built-in AO, but I'm wondering if Firestorm has so cornered the TPV market that hardly any of us scripted-AO users remain. Anybody else willing to confess?

Or have folks found their own, more modern AO script, and simply pull out the anims from Vista and other big-name AOs?

Link to comment
Share on other sites

I still use the AO I bought years ago. I don't use the built in AO, mostly because I'm too lazy to be bothered to put the animations (I typed animals...I have no idea why) into the built in AO in FS.  So, I stick with what works, and it's most likely using the same inefficient methodology that countless others use. I have no need to find a new AO, in fact, I've only ever owned two human ones my entire time in sl. My hamster av has its own AO, since it comes with one. 

I'm sure there are loads of folks that still use scripted AOs, doubtful that most users are up to speed on the efficiency of one call versus another, mostly because most of them probably don't know a thing about scripting-or have limited knowledge anyway. If it's not something that directly has a negative effect on them it's not likely they'll ever notice it either. People like to buy things "out the box, ready to go", as a general rule, more than they take the "take all the things out the box, put n my own box" approach. Some of us take the latter with some things, but not all. Some folks-probably way fewer-take the latter approach with all things. But I suspect that most folks fall under the first umbrella. If it works, and we like it, we use it...we pay little mind to the backend of things. I've taken loads of things apart in sl, and I mean looooooads. But AOs..meh, not really, no need to, for me, lol. I've never even been all that curious about them, I've got too much other stuff to take apart and examine :D

  • Like 4
Link to comment
Share on other sites

I'm still using ZHAO-II based AO to which I have been gradually adding animations. I never buy full AO packs because all of them have some useless (silly or bad) animations for me.
(I wonder is it very difficult to make natural looking female walks as many AO walks appear to have extreme hip movements, which look really bad and unnatural.) :/ :S xD

I have never used Firestorm's built in AO. Some of my AO animations are transfer/no copy. Thus viewer based AO would be a problem if I occasionally need to use other viewer, I wouldn't have all the animations available in separate AO.

I would be interested if there were separate AOs available with more modern scripts.

  • Like 4
Link to comment
Share on other sites

Neither I nor any of my subs have been using Firestorm's built-in AO -- mostly for simply lacking the motivation to put all the animations into that viewer-AO thingy.

Currently, I'm using a rather cheap Vista AO; my subs (mostly) the OpenCollar AO instead.

That said, it seems to me that @eighthdwarf Checchinato's rant from May 2011 (!) still has its validity:

Quote

[...]

Here's a challenge, you AO makers:
Go out into RL for a while, and watch the real people out there, how they walk, stand, sit, lay etc. -- and not those in cartoons and animes or on the catwalk where they move exaggeratingly anyways.
Rather go and watch the people in the streets, in the parks, in the cafes and Malls. The REAL people. See how they move while standing around talking, while walking, while presenting and building things, while sitting on park benches and cafe chairs, while laying or sitting on meadows, beaches - even on the hard asphalt.
Do they move as if they were wearing one of your AOs? I bet they don't. I even bet none of the real people out there move as if they were wearing one of your AOs.
So how the heck did you get the idea of putting THESE anims in there?

[...]

 

  • Like 5
Link to comment
Share on other sites

Many creators are not active with participating in or following content creator's meetings, server release notes or even the wiki to know when new functions become available.

This leads to many products remaining unchanged for years or leads many new creators using dated script examples to build their products off of.

Many people go with what is popular and/or tried and true, thus what has a ton of good reviews on marketplace even if it is old.

Other creators don't have the time they did in years past to create, trial and update things.

Many people don't use FS's AO because they want something that works out of the box with having to set up anything.

  • Like 3
Link to comment
Share on other sites

Thanks everybody, that's a big help. Now I'm idly investigating what it would be like to read ZHAO-II notecards and use them to drive llSetAnimationOverride() -- "llSAO" -- and how or if to do parts that aren't simple overrides (more below).

@Callum Meriman, is there more to the tale of splayed fingers?

There are some jiras filed on this feature, mostly unworked (or at least not updated since they were swallowed by the great gaping maw of the Lab's internal jira, never to be spoken of again). Of note:

  • BUG-11569 [BENTO] Setting Animation Override for built-in animations. This would be a super valuable addition, should have been done before Bento ever got out of beta, so mesh heads could automatically respond to the facial animation cues that are common to much SL furniture but now only work with the diminishing stock of "classic" avatars. (There are analogous requests for llSAO-based typing override, one accepted, an earlier one rejected.) 
  • BUG-41048 [Bento] When wearing some Bento content, all walking animations freeze. - Seems that some layered animations - even just hand movements - may stop animations played because of llSAO. So if that happens regularly, it would doom any switch to the newer function. (But I've been seeing the same behavior often recently with the built-in walk failing to play when I turn off my ZHAO-II-based AO, so now I wonder if maybe those wearing the right Bento-animated mesh can only ever walk properly if an AO of some sort is playing anims explicitly, as with llStartAnimation.)
  • BUG-7095 llSetAnimationOverride has undefined behavior when using looping animations for transitional states. Say your ZHAO-II notecard specifies an override for an animation state such as "Standing Up" which is only supposed to play in a transition between other states. If a looping animation is specified, llSAO will cause it to start and it will never get stopped by change of state, whereas ZHAO-II would have explicitly stopped it.

and there are enough others to suggest a llSAO-based replacement of ZHAO-II may be a perilous project.

Another consideration is that llSAO specifies a single animation to be played during an animation state, whereas ZHAO-II supports multiple layered animations played simultaneously. I personally use that feature, but I'm not sure how popular it is; imitating it in a llSAO-based script could lose much of the efficiency improvement.

Also, the swim-related pseudo-states (Floating, Swimming Forward, Swimming Up, Swimming Down) require that the script sample the environment to decide when these swimming animations should replace the flying overrides. ZHAO-II does this by testing current position against llWater() every time a fly/swim state is detected, so that's another problem for achieving much efficiency gain.

So I don't know whether I'll ever do anything with any of this. For now, just leaving these breadcrumbs on the trail.

  • Thanks 2
Link to comment
Share on other sites

Yes, they are very interesting Jiras. The one about walk being killed happened to me in the early days of Bento with the lovely Fate cloak early on, that was solved in it's dedicated Zhao-AO with a little script change I believe. It's a nice cloak!

Vista's two male Bento AOs (Carl and Victor) do solve the splayed fingers problem, but he has built the hand poses into the various animations, so each time I cycle stand poses my hands are refreshed, and everyone sees them correctly. Being Bento poses, this makes them much larger files than normal so means there cant be any breathing.  But, I prefer nice hand positions over breathing, heh.

Due to the length they also don't seem so great in the inbuilt AO. From my small tests anyway. Those tests showed there were huge pauses of default stand and walk (quack-quack) for other people. I think he does some pre-loading in some situations, not sure. But then again, I have not really bothered stripping the animations from his AO into the inbuilt FS one yet and really trying hard to optimise everything - just too many other projects on the boil ;-)

Using a non-bento AO and stand alone hand poses meant I could see my hands correctly, but more often than not other people can't and see splayed fingers. As I am a neko my animation situation is more complex than most humans, I have bento ears and bento tail on their own AOs too, and umm, a bento attachment on the new groin bone sometimes too to give me 4 active AOs.

I guess sometimes there is something happening between the various AOs I need for the various parts of me, but it seems to come down to TP's especially and the animations for the hand not refreshing.... or being stopped by sit, dance, tail, whatever.

  • Thanks 2
Link to comment
Share on other sites

1 hour ago, Qie Niangao said:

Thanks everybody, that's a big help. Now I'm idly investigating what it would be like to read ZHAO-II notecards and use them to drive llSetAnimationOverride() -- "llSAO" -- and how or if to do parts that aren't simple overrides (more below).

@Callum Meriman, is there more to the tale of splayed fingers?

There are some jiras filed on this feature, mostly unworked (or at least not updated since they were swallowed by the great gaping maw of the Lab's internal jira, never to be spoken of again). Of note:

  • BUG-11569 [BENTO] Setting Animation Override for built-in animations. This would be a super valuable addition, should have been done before Bento ever got out of beta, so mesh heads could automatically respond to the facial animation cues that are common to much SL furniture but now only work with the diminishing stock of "classic" avatars. (There are analogous requests for llSAO-based typing override, one accepted, an earlier one rejected.) 
  • BUG-41048 [Bento] When wearing some Bento content, all walking animations freeze. - Seems that some layered animations - even just hand movements - may stop animations played because of llSAO. So if that happens regularly, it would doom any switch to the newer function. (But I've been seeing the same behavior often recently with the built-in walk failing to play when I turn off my ZHAO-II-based AO, so now I wonder if maybe those wearing the right Bento-animated mesh can only ever walk properly if an AO of some sort is playing anims explicitly, as with llStartAnimation.)
  • BUG-7095 llSetAnimationOverride has undefined behavior when using looping animations for transitional states. Say your ZHAO-II notecard specifies an override for an animation state such as "Standing Up" which is only supposed to play in a transition between other states. If a looping animation is specified, llSAO will cause it to start and it will never get stopped by change of state, whereas ZHAO-II would have explicitly stopped it.

and there are enough others to suggest a llSAO-based replacement of ZHAO-II may be a perilous project.

Another consideration is that llSAO specifies a single animation to be played during an animation state, whereas ZHAO-II supports multiple layered animations played simultaneously. I personally use that feature, but I'm not sure how popular it is; imitating it in a llSAO-based script could lose much of the efficiency improvement.

Also, the swim-related pseudo-states (Floating, Swimming Forward, Swimming Up, Swimming Down) require that the script sample the environment to decide when these swimming animations should replace the flying overrides. ZHAO-II does this by testing current position against llWater() every time a fly/swim state is detected, so that's another problem for achieving much efficiency gain.

So I don't know whether I'll ever do anything with any of this. For now, just leaving these breadcrumbs on the trail.

I found uses for (modified) ZHAO-II style scripts which cannot be achieved via llSetAnimationIverride. Specifically,  single/couple/group “vehicle” that maintain relative position of avatars while running anims - but the avatars are actually sitting to achieve this. Basically a couples walk/fly/“bed anywhere”. llSAO would only run “sit” anim for this use-case.

Link to comment
Share on other sites

I use the Akeyo AO and add my own animations to it. I sometimes buy the full AO, even with the silly animations if the animations I want add up to the same or more than the full AO. I take the ones I want and add them to the Akeyo. It's basically like the FS AO with the drop in. I do have a walk, run, fly and 2 stands in the FS AO that I use when I go to events and strip down my avi for lowest complexity and scripts.

Link to comment
Share on other sites

Never bothered with the FS AO i used to use ZHAO-II type AO's until i got gifted an Akeyo, one version of the HUD had a function i found useful that couldn't exist in the built in AO, i like that if i buy animations from the store they're automatically added or if i rezz the HUD and add animations they're automatically configured plus it's easier to use/set up and more pleasing on the eye in comparison to the ZHAO-II types

Link to comment
Share on other sites

I used ZHAO-II type AO's until about 6 months ago when I decided to give the FS AO a try.  I've never used the Akeyo type, so I don't know how the Akeyo and the FS one compare for ease of use in adding/changing animations, but I've found the FS AO very easy to set up and use - much easier than the ZHAO-II having to drop the AO on the floor, add animations and update a notecard.  I have several different sets in the FS AO and it's very easy to switch between them (my normal bento set, dances, barely move non-bento set for a RP, and some very active bento stand animations that are good for pictures).

For the odd situations where I log in with the LL viewer, I just wear one of my scripted AO's after I log in.  

  • Like 1
Link to comment
Share on other sites

On 03/02/2018 at 7:58 PM, ThorinII said:

[...]
Go out into RL for a while, and watch the real people out there, how they walk, stand, sit, lay etc. -- and not those in cartoons and animes or on the catwalk where they move exaggeratingly anyways.

Do they move as if they were wearing one of your AOs? I bet they don't. I even bet none of the real people out there move as if they were wearing one of your AOs.
So how the heck did you get the idea of putting THESE anims in there?

[...]

You can probably tell who might be SLers in RL they try to mimic their AO or don't stand still for more than 10 seconds whilst waiting in a queue/standing around 

  • Like 2
Link to comment
Share on other sites

In hoom mode I have one stand and one squat, triggered when I want. Otherwise I erm use whatever I am erm doing - dance as a polite example.

After some years of seeing people checking the bottom of a shoe for erm stuff I am almost tempted to file a Jira request to block others AO animations ..

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 2311 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...