Animesh vs opensim NPCs
- Tess Juel
- Posts: 406
- Joined: Sun Sep 11, 2016 4:24 pm
- Has thanked: 324 times
- Been thanked: 515 times
Animesh vs opensim NPCs
I've noticed some people have started to use animesh instead of NPCs and I was wondering, has anybody tried to comprare their performance?
I invited one of SL's foremost animesh experts over to opensim to see some of the more advanced NPC applications here and he was very clear that there was no way that could be done with animesh in SL because it would be way too heavy for the servers to run. We never did any formal tests though and the animesh code for opensim wouldn't be the same as that for SL anyway. So I'm really curious.
I invited one of SL's foremost animesh experts over to opensim to see some of the more advanced NPC applications here and he was very clear that there was no way that could be done with animesh in SL because it would be way too heavy for the servers to run. We never did any formal tests though and the animesh code for opensim wouldn't be the same as that for SL anyway. So I'm really curious.
Last edited by Tess Juel on Wed May 11, 2022 6:01 pm, edited 1 time in total.
- These users thanked the author Tess Juel for the post (total 3):
- Ilan Tochner • Selby Evans • Alexina Proctor
- Kim McCabe
- Posts: 38
- Joined: Fri Mar 20, 2020 5:34 am
- Has thanked: 58 times
- Been thanked: 65 times
Re: Animesh vs opensim NPCs
Following.Tess Juel wrote: ↑Thu Mar 19, 2020 11:51 pmI've noticed some people have started to use animesh instead of NPCs and I was wondering, has anybody tried to comprare their performance?
I invited one of SL's foremost animesh experts over to opensim to see some of the more advanced NPC applications here and he was very clear that there was no way that could be done with animesh in SL because it would be way too heavy for the servers to run. We never did any formal tests though and the animesh code for opensim wouldn't be the ame as that for SL anyway. So I'm really curious.
-
- Posts: 1314
- Joined: Sun Dec 23, 2012 2:26 pm
- Has thanked: 1134 times
- Been thanked: 1142 times
Re: Animesh vs opensim NPCs
I've no idea what would constitute a useful test or metric though I have played around a little with npc crowds albeit on Premium regions so may not apply generally.
This was an attempt to get an idea of capacity at a music hall. Pretty laggy at around 150 seated npcs.
This is 171 phantom animesh running the simple navigation script (including sensor) I posted previously, ie moving around using keyframed animation. I copy rezzed them so numbers determined using area search -- feel free to count them but I suspect there's a fair bit of overlap! Again somewhat laggy but my avatar could move around, frame rate with top graphics setting about 6.

Quite impressed by this and, given current circumstances, tempted to implement some kind of infection model if only out of curiosity.
Script: viewtopic.php?f=26&t=5398&p=27128#p27128
This was an attempt to get an idea of capacity at a music hall. Pretty laggy at around 150 seated npcs.

This is 171 phantom animesh running the simple navigation script (including sensor) I posted previously, ie moving around using keyframed animation. I copy rezzed them so numbers determined using area search -- feel free to count them but I suspect there's a fair bit of overlap! Again somewhat laggy but my avatar could move around, frame rate with top graphics setting about 6.

Quite impressed by this and, given current circumstances, tempted to implement some kind of infection model if only out of curiosity.
Script: viewtopic.php?f=26&t=5398&p=27128#p27128
Tess Juel wrote: ↑Thu Mar 19, 2020 11:51 pmI've noticed some people have started to use animesh instead of NPCs and I was wondering, has anybody tried to comprare their performance?
I invited one of SL's foremost animesh experts over to opensim to see some of the more advanced NPC applications here and he was very clear that there was no way that could be done with animesh in SL because it would be way too heavy for the servers to run. We never did any formal tests though and the animesh code for opensim wouldn't be the ame as that for SL anyway. So I'm really curious.
- These users thanked the author Graham Mills for the post (total 2):
- Tess Juel • Alexina Proctor
- Ilan Tochner
- Posts: 6726
- Joined: Sun Dec 23, 2012 8:44 am
- Has thanked: 5243 times
- Been thanked: 4674 times
- Contact:
Re: Animesh vs opensim NPCs
Hi Graham,
I recommend not using viewer FPS as a way to measure the actual server load that each of your scenarios created. Instead use the graphs on the world's world page when that world is active. They'll enable you to track the actual CPU and network load under each of the scenarios you run. Note you'll only be able to see these graphs when you're viewing a world page of a world that is owned by your own Kitely account.
I recommend not using viewer FPS as a way to measure the actual server load that each of your scenarios created. Instead use the graphs on the world's world page when that world is active. They'll enable you to track the actual CPU and network load under each of the scenarios you run. Note you'll only be able to see these graphs when you're viewing a world page of a world that is owned by your own Kitely account.
- These users thanked the author Ilan Tochner for the post (total 3):
- Tess Juel • Graham Mills • Chris Namaste
-
- Posts: 1314
- Joined: Sun Dec 23, 2012 2:26 pm
- Has thanked: 1134 times
- Been thanked: 1142 times
Re: Animesh vs opensim NPCs
Useful. Thanks.
Ilan Tochner wrote: ↑Fri Mar 20, 2020 10:55 amHi Graham,
I recommend not using viewer FPS as a way to measure the actual server load that each of your scenarios created. Instead use the graphs on the world's world page when that world is active. They'll enable you to track the actual CPU and network load under each of the scenarios you run. Note you'll only be able to see these graphs when you're viewing a world page of a world that is owned by your own Kitely account.
-
- Posts: 1314
- Joined: Sun Dec 23, 2012 2:26 pm
- Has thanked: 1134 times
- Been thanked: 1142 times
Re: Animesh vs opensim NPCs
One possible issue is that I couldn't get animesh to play an animation when rezzed using llRezObject. Maybe just me but currently that means having to populate the region manually.
I should add that this issue isn't any kind of priority for me; no response required.
I should add that this issue isn't any kind of priority for me; no response required.
-
- Posts: 1314
- Joined: Sun Dec 23, 2012 2:26 pm
- Has thanked: 1134 times
- Been thanked: 1142 times
Re: Animesh vs opensim NPCs
Now running 350 animesh avatars. A few glitches in the animation and the occasional lost avatar but pretty responsive.


- These users thanked the author Graham Mills for the post (total 2):
- Tess Juel • Selby Evans
- Ilan Tochner
- Posts: 6726
- Joined: Sun Dec 23, 2012 8:44 am
- Has thanked: 5243 times
- Been thanked: 4674 times
- Contact:
Re: Animesh vs opensim NPCs
Hi Graham,
Can you please post the CPU and network graphs from the Active World panel after 10 minutes of running this test?
Can you please post the CPU and network graphs from the Active World panel after 10 minutes of running this test?
- These users thanked the author Ilan Tochner for the post (total 2):
- Tess Juel • Chris Namaste
- Tess Juel
- Posts: 406
- Joined: Sun Sep 11, 2016 4:24 pm
- Has thanked: 324 times
- Been thanked: 515 times
Re: Animesh vs opensim NPCs
That's really impressive.Graham Mills wrote: ↑Sat Mar 21, 2020 9:09 pmNow running 350 animesh avatars. A few glitches in the animation and the occasional lost avatar but pretty responsive.
But what your test shows, is that animesh with KFM works really well for multiple instances of the same character running the same animation and following the same fairly simple path. There's a lot of reusable data in your test and that shuold make it much easier for both server and client but it leaves quite a few questions unanswered, such as:
- What happens if the animesh characters follow different and more complex paths?
- How about uneven terrain?
- How about characters walking on prims, sculpts and meshes?
- What if the characters run different animations?
- How does the number of active bones affect performance?
-
- Posts: 1314
- Joined: Sun Dec 23, 2012 2:26 pm
- Has thanked: 1134 times
- Been thanked: 1142 times
Re: Animesh vs opensim NPCs
Hi Tess
Thanks for your comments.
I'm certainly interested in scripting more complex and emergent behaviours although I suspect others will do a better job and the temptation is to let them! In the first instance, however, I'd want to support branching paths via the marker prims and I think that should be fairly straightforward.
The animesh here are phantom so the issue is more one of programming elevation relative to terrain, mesh or path prims.
Running different animations should be straightforward. Using the feature constructively inworld might require further thought.
I only have the one avatar so cannot comment on bones vs performance or, indeed, determine whether any issues are server or client-side.
A couple of observations on the existing code (such as it is):
Avatars show a tendency to be trapped at markers on world restart.
At high avatar counts the sensing required to locate the next marker goes awry during shift-copy of the avatar (more pronounced still if mutilpe avatars are shift-copied). Finding out how to rez active animesh from a script would eventually be a boon.
Thanks for your comments.
I'm certainly interested in scripting more complex and emergent behaviours although I suspect others will do a better job and the temptation is to let them! In the first instance, however, I'd want to support branching paths via the marker prims and I think that should be fairly straightforward.
The animesh here are phantom so the issue is more one of programming elevation relative to terrain, mesh or path prims.
Running different animations should be straightforward. Using the feature constructively inworld might require further thought.
I only have the one avatar so cannot comment on bones vs performance or, indeed, determine whether any issues are server or client-side.
A couple of observations on the existing code (such as it is):
Avatars show a tendency to be trapped at markers on world restart.
At high avatar counts the sensing required to locate the next marker goes awry during shift-copy of the avatar (more pronounced still if mutilpe avatars are shift-copied). Finding out how to rez active animesh from a script would eventually be a boon.
Tess Juel wrote: ↑Sun Mar 22, 2020 12:45 pmThat's really impressive.Graham Mills wrote: ↑Sat Mar 21, 2020 9:09 pmNow running 350 animesh avatars. A few glitches in the animation and the occasional lost avatar but pretty responsive.
But what your test shows, is that animesh with KFM works really well for multiple instances of the same character running the same animation and following the same fairly simple path. There's a lot of reusable data in your test and that shuold make it much easier for both server and client but it leaves quite a few questions unanswered, such as:
- What happens if the animesh characters follow different and more complex paths?
- How about uneven terrain?
- How about characters walking on prims, sculpts and meshes?
- What if the characters run different animations?
- How does the number of active bones affect performance?