[sldev] Two potential plugin architectures: Inheritance across DLLs and NPAPI

Dale Glass dale at daleglass.net
Sat Feb 24 08:38:01 PST 2007


В сообщении от 24 февраля 2007 17:06 Tim Shephard написал(a):
> > Client is patched to call LLFloaterAvatarList::updateAvatarList() every
> > frame, which then goes over LLCharacter::sInstances and updates its
> > internal list.
>
> This is one of the problems with this style of architecture.. rather
> than simply invalidating your widgets and asking the UI control to
> redraw, you have to poll yourself very rapidly.   This isn't ideal
> from a performance point of view.
What do you mean?

It doesn't HAVE to update itself every frame. It's just that the code that 
updates the internal list runs every frame because I made it like that. I 
could make it be every 5 frames instead, or time it to be every second. 

Skipping frames wouldn't have been good for the people with low framerates. 
And since it doesn't seem to have a noticeable effect on framerate anyway, I 
just left it like that.

The UI doesn't get updated if it's hidden, too.

The alternative to this would be getting events "avatar Alice moved", "avatar 
Bob appeared", etc. But the update of the internal list has very little 
performance impact anyway, so that'd be too much complexity for very little 
benefit.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.secondlife.com/pipermail/sldev/attachments/20070224/19045588/attachment.pgp


More information about the SLDev mailing list