[Opensim-dev] IClientAPI.GetDefaultAnimation

Peter Newman wizarth at gmail.com
Wed Nov 18 22:55:15 UTC 2009


OK, that makes sense. Since I'm poking in the area, I'll see about 
moving those out of the core and across IClientAPI.

Peter N

Melanie wrote:
> The purpose of this method is to provide the animations that are
> hardcoded in the viewer. These are, specifically, the facial
> expressions, which cannot be triggered any other way.
> 
> To allow LSL scripts to trigger those by name, we have a method in
> the client view. This should really be in the client view, since
> core should not be hardcoded to use linden UUIDs. The LL standard
> animations file should actually not be read by a core component, the
> core component (AvatarAnimations) should defer that tot he client view.
> 
> Melanie
> 
> Peter Newman wrote:
>> 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/
>> _______________________________________________
>> Opensim-dev mailing list
>> Opensim-dev at lists.berlios.de
>> https://lists.berlios.de/mailman/listinfo/opensim-dev
>>
>>
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev




More information about the Opensim-dev mailing list