Jump to content

Second Life Viewer and animations drifting into synchronization


You are about to reply to a thread that has been inactive for 167 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

Does anybody know why avatars playing a common animation drift into synchronization after a while when viewed with Linden Lab's Second Life Viewer?  I have been asked several times but can only call it a "happy accident" that resembles that described by the Kuramoto Model.  This leaves me wondering what would be the mutual forces at work causing this drift into synchronization.

Link to comment
Share on other sites

Running the animations uses some CPU time, probably. It takes very little coupling to make oscillators synchronize.

Watch them synchronize. Pay attention to the one in the right column, second row.

  • Haha 1
Link to comment
Share on other sites

11 minutes ago, animats said:

Running the animations uses some CPU time, probably. It takes very little coupling to make oscillators synchronize.

Watch them synchronize. Pay attention to the one in the right column, second row.

So, you don't know.  Got it.

  • Like 1
Link to comment
Share on other sites

I'm not sure about animations 'drifting' into sync, but animations can be synced (either deliberately or by accident) by controlling when an animation starts or stops. Note that calling an animation may require the viewer to download the relevant asset from the server, so a script calling the same animation on 2 different avatars in a 3 second interval would likely result in the animations starting at the same time (as the asset hasn't been downloaded to the viewer yet, so the animation will start to play when it is available, irrespective of the time passed between the animation calls)

Link to comment
Share on other sites

It "might" have something to do with the recent Jelly Dolls code where animation frame is updated based on number of frames that elapsed since the last update.

It still has areas where it fails such as with animesh, ranking and also screws up outside of the interest list.

The goal was to attempt to have agents/animesh leaving impostored state on the correct elapsed time frame and not just update animations one sequential frame every second while impostored.

Other than impostored state, distance from camera is another factor.

Link to comment
Share on other sites

12 hours ago, Ardy Lay said:

So, you don't know.  Got it.

I'd expect that to happen. An animation uses some resources and has a fixed time delay. That alone will result in sync. I see this all the time, because I have some animesh side by side on pose stands, in different outfits, all running the same animation list. The animation switching is sim-side, so there's a common resource conflict that makes them fall into sync.

It's a known annoying problem in computing. It usually comes up with things that poll. If the polling works by having a delay between the end of one poll and the beginning of the next, and replies to a poll have some variance based on delay, all the pollers will synch up. One of the early workers in networking, who was at LLNL and a physicist by training, first saw this.

The way you stop this is by timing from before you start the event, not after. That way, how long the event takes doesn't force a drift into sync.

I once built up some oscillators on a solderless breadboard to experiment with this. If close to the same frequency, they'd sync up just because they drew power from the same power supply.

  • Like 1
Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 167 days.

Please take a moment to consider if this thread is worth bumping.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...