Pose partially overridden by animation
|
Virrginia Tombola
Equestrienne
Join date: 10 Nov 2006
Posts: 938
|
03-08-2007 08:56
Hello everyone, I have been working a bit with a Flip Animation Override recently and have encountered some puzzling (to me at least  ) behaviors. I was using it to create a "wearable" trolley with a standing pose for the engineer. But the odd thing is that the default walking animation seems to override the bottom half of the avatar. The top half stays posed, but the legs walk when the avatar moves. Similarly, I tried to use a standing pose for a regular vehicle and called the animation within the vehicle script. Sitting animations called just fine, but standing animations had a sitting posture, but again the upper torso posed. I "scrubbed" the root prim, and reloaded the AO and vehicle scripts respectively, but the behaviors reoccurred. Any ideas?
|
Dylan Rickenbacker
Animator
Join date: 11 Oct 2006
Posts: 365
|
03-09-2007 03:24
Hi Virrginia, I'm guessing here, but it seems to me that your problem is in the scripts, namely, in the part where the script takes the controls. You can specify there whether the script just executes the assigned function when a key is pressed or whether it also passes the keystroke on to the default function. Sounds to me as if the latter is the case in your scripts. The line in the code would look something like this:
llTakeControls(CONTROL_FWD, TRUE, FALSE);
This line would cause the script to take control of the forward key so that the function that is assigned to it elsewhere in the script is executed without passing on the keystroke to the default function, which would be the desired behaviour in your case. In your scripts, the line probably reads something like
llTakeControls(CONTROL_FWD, TRUE, TRUE);
instead, which means that the assigned function is executed AND the keystroke is passed on, so the default function (walking forward in this case) is executed as well.
Another thing that you could check is whether in your poses, the leg joints have been moved between frame 1 (the default reference pose that is not played in SL and should be left untouched) and frame 2. If they haven't, SL will just ignore these joints and play whatever animation is called for them by default.
|
Learjeff Innis
musician & coder
Join date: 27 Nov 2006
Posts: 817
|
03-09-2007 09:22
Yes, that's how they seem to work. I think this is on purpose. It works great for me, for example, I made a pose for a flowergirl, only adjusting the arms and hands. When she walked, any body parts I did not adjust were unaffected by my anim.
Here's my suspicion: if you want a given joint to stay in the pose, move it from the standard position, even very slightly. In other words, the animation says nothing about any joints that you did not move from the standard position, and the normal overrides take place.
For example, if you make a sit pose and only adjust the legs, when the sitter chats, we'll see the typing animation. But if you adjust their arms too, we won't. I suspect if you adujst just one arm, we'll see only one hand typing.
I don't know what the granularity is either: it could be specific to each joint, or might be based on groups of joints. For example, if you only adjust the shoulder, will we see forearm and wrist movements for the typing anim? If anyone knows I'd like to hear.
|
Virrginia Tombola
Equestrienne
Join date: 10 Nov 2006
Posts: 938
|
03-09-2007 18:24
Thanks! Well, that answers it, and makes sense.
|
Jen Shikami
Registered User
Join date: 21 Dec 2006
Posts: 13
|
03-13-2007 12:25
This is probably the explanation for the problem I'm encountering, too. But, if it's OK for me to heap on here... I'd like to explain my situation and see if The Experts agree with my newbish analysis.  I plan to build a crawling on all fours animation. So to start, I tried just setting up an "on all fours" still pose. (T-pose frame 1, still pose frame 2) When I play it in-world, it looks good, but the elbows and hands "wander" around (presumably in correspondance with the usual standing positions?). I did rotate move the elbows and hands, but not necessarily in all three rotations (x, y, z). Would that mean they'd still be free to bend in the non-rotated directions -- is that what I'm seeing? Or is something else going on here? I did find this related post, but I admit I don't really understand it... /52/fd/166742/1.htmlI am hoping to allow the head (or the neck? Not sure which it needs to be) to turn but keep the typing animation suppressed. Any advice on that point welcome, too. If you'd prefer I make this a separate new post, just let me know and I will. Thanks!
|
Jen Shikami
Registered User
Join date: 21 Dec 2006
Posts: 13
|
Shoulda figured this out sooner...
03-14-2007 05:28
OK, sure enough I figured this out with a little experimentation. I hadn't moved the forearm enough. Any direction would do. So -- as I said to my husband -- "I just kept jiggling it until it went rigid!"
Ahem!
|
Learjeff Innis
musician & coder
Join date: 27 Nov 2006
Posts: 817
|
03-14-2007 10:20
OK, in addition to locking joints, there is also priority. You can be using several anims at once, and the one with the highest priority wins. You assign the priority when you upload the anim (just as that's when you set the time to move into and out of the animation). Here are my hypotheses. Folks, PLEASE correct any mistakes! 1) Joints are locked by moving them between the first ("reference"  frame and the second frame (which is actually the first frame of the animation, as it runs). I'm using the numbering convention of Qavimator, since I don't have Poser. 2) Locking is on a joint-by-joint basis, not per-angle in a joint. That is, move the joint on any angle, it locks that joint for all angles. 3) Priority is applied on a joint-by-joint basis, rather than on the whole anim. 4) There are built-in animations for things like walking, typing, etc. 5) The built-in animations can be overridden in any avatar that uses an AO, which can cause the results for your animation to be different for different avatars. These are all things we need to keep in mind when making poses and animations. And of course, the obvious one, that size matters. 
|
Jen Shikami
Registered User
Join date: 21 Dec 2006
Posts: 13
|
03-14-2007 14:16
Size... no no, it's all how you move it!  Sounds like a good summary and I haven't seen it stated as such elsewhere, so thank you. #3 is especially interesting to me (thinking back on typing while seated, etc., this makes sense!) I forgot to say it in my reply above, but my experience answers your earlier question, "If you only adjust the shoulder, will we see forearm and wrist movements for the typing anim?" The answer is definitely Yes.
|
Learjeff Innis
musician & coder
Join date: 27 Nov 2006
Posts: 817
|
03-14-2007 19:13
Does anyone know the priority of the built-in anims?
|