[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