[Opensim-dev] IClientAPI.GetDefaultAnimation

Peter Newman wizarth at gmail.com
Wed Nov 18 10:41:14 UTC 2009


Hello,
I'd like to know if there is a non-obvious reason why IClientAPI 
provides GetDefaultAnimation . The reason I ask is I've done some work 
with AvatarAnimations and related to not use magic strings ("SIT", 
"STAND", etc) for avatar states. However, I noticed the llStartAnimation 
implementation calls ScenePresence.AddAnimation, which calls 
IClientAPI.GetDefaultAnimation (and is the only place that calls it) . 
However, the only client that has an implementation of this function is 
the LLClient, all others return UUID.Zero or throw an exception.

In LLClient, the implementation there duplicates the functionality of 
AvatarAnimations, reading in the same file and parsing it into a 
duplicate of one of the data structures that AvatarAnimations provides.

I ask, is there a reason for the IClientAPI implementation to implement 
this function that seems to reproduce functionality available to 
ScenePresence already. Since the animation updates for moving don't use 
this function, it seems it is limited only to llStartAnimation.

My thought is, if there is no reason otherwise, to remove this function 
from IClientAPI, redirect the ScenePresence.AddAnimation to use the 
AvatarAnimation class. Even independent of the changes I've made for the 
removal of strings, it seems like this would be more efficient.

Peter N
aka Wizarth
http://www.wizarth.com.au/



More information about the Opensim-dev mailing list