 Welcome back to the 230 to 3pm session of the 2021 Open Simulator Community Conference. In this session we are pleased to introduce a presentation called Anna Mesh is coming. Our speaker is Kayaker Magic and Kayaker brought more than four decades of real-life programming experience to writing scripted objects for OpenSim. He teaches classes every week on using the 3D modeling program Blender to create objects in world. Definitely check those out. He's been learning how to use Anna Mesh to increase the functionality of objects while decreasing their lag on systems. A little housekeeping check out our website found at conference.opensimulator.org for his speaker bio as well as details of sessions and future things scheduled throughout this conference. The session is being live streamed and recorded so if you have any questions or comments during the session you may send tweets to at OpenSimCC with the hashtag OSCC21. So welcome everybody here and on YouTube let's begin the session. Kayaker it's up to you. Hello thank you for that great intro. As you heard I've been excited about Anna Mesh. It's been available in Second Life for a while and we got it. It seems only recently on OpenSim and I don't think it's been used very much yet and so the whole point of this talk is I'm hopefully not going to read my slides to you. I'll let you read them and I'm going to drag out a bunch of things and the first couple are not going to be Anna Mesh. I'm going to explain the past and then I'm going to drag out a bunch of Anna Mesh things and the whole point is to get all the creators here in OpenSim excited like me to make more Anna Mesh objects which is going to make our experience much better and as you heard it's going to make the experience less laggy on the servers and I'm always trying to be nice to the servers. But before I get to Anna Mesh let me show you a few things that are not Anna Mesh and the idea is that I want to talk about what did we do in the past? How did we animate things? And it seems a shame sometimes that creators in Second Life and OpenSim went to tremendous efforts to make things animated when you know the right way to do it probably would have been Anna Mesh all along. This particular critter here is a dinosaur that I made and I animated the legs by doing something that's called a puppeteer animation. Perhaps you heard the step. Oh I forgot that she makes noise when her feet land. But a puppeteer animation means that you make something out of primes and each joint has to be a separate prim so in her case she's got a thigh bone and a four leg bone and a foot bone and each one of those prims is a separate object that was linked together and then you have to write a mountain of script in order to make them move in that natural way and it's a tremendous amount of work and it's a shame that graphic systems should be able to do this with rigged meshes and we finally have the ability to do that with Anna Mesh. So that's one form of animation that is bad on the server because all of these parts have to have extra vertices in order to make them complete and then you have to have a tremendous amount of a script to move them around and the script uses up server time and then it also uses up a tremendous amount of bandwidth sending messages to all the viewers saying move this leg bone, move that foot bone, move this bone, move that bone. So there's a lot of communication burning up the internet to make those legs move and Anna Mesh is going to be better but before I tell you why Anna Mesh is better let me tell you about another form of of animation that people used a lot and the dinosaur uses this let's call her Sue and this isn't the three headed dog guarding Hades in order to make her head turn back and forth I used something called transparency animation where I actually made how many heads is this I've forgotten it's six heads and two jaws or maybe four jaws and as she looks around I have to make different heads transparent and other heads visible in order to make it look like she's turning her head and this uses up a lot of system resources because it turns out that to send a message to make to change a transparency is called a is a large packet of data to move a bone a prim is a small packet but doing transparency animation uses up a lot of bandwidth sending messages to make different parts transparent so that's two forms of animation that we've used in the past there's another one that is you're going to think this looks about the same do you see the blue critter here this blue critter uses something called sculpt the animation and as a matter of fact if you look in the second life wiki they're going to tell you don't do this and in sculpt the animation what actually happens is every time one of these legs move I I I change the scope so each leg has like six different sculpts and they're switching back and forth between them all and it turns out this uses a a large packet of information it uses up a lot of bandwidth and it also used to cause problem for the physics engine but fortunately we can make the legs phantom now and I think they aren't a big burden on the physics engine like they used to be so maybe it's not so bad that I use this form of animation but it's also a lot of scripting work and a lot of bandwidth and this is all fixed by by using animash by the way I'm not going to teach you animash how to do animash in the next hour or I mean 10 minutes or however much time I have left oh I have something that I'm trying to set up here this is a form of animation that actually works pretty good in in second in second life in open sim and this is texture animation the advantage of texture animation is that it uses resources on the viewer so the viewers can make textures slide around or make them animated in several different ways rotating and sliding and then showing cells and so a if you're if you're if you're good with with designing UV maps you can use this to do all sorts of amazing things like I made the the lava in this mesh object flow and I've used it to make lights that blink by moving a texture through a light bulb more rapidly than this and if the texture has black spots and white spots in it then the light blinks on and off and then the viewer makes the light blink and the server doesn't have to do the timing work and the server doesn't have to send messages over the internet and bog down the bandwidth and in order to just make a light blink and you're not going to believe that this is texture animation it's sort of a combination of what I showed you before this flag it's sort of a combination of of transparency animation and texture animation where there's actually two flags there and and they're each one is becoming opaque and transparent in the right order to make it look like the flag is flapping but the the animation the changing of the textures is done using texture animation so the server is doing all the work there and making the flag look like the server is waving it but it's not so that's actually something that worked out pretty well before we when we didn't have animash so that's more than enough time on on the past another thing I've heard people say is that NPCs are the same thing as animash right we already have NPCs why didn't we need animash well there's a lot of reasons I'm just going to get rid of this dinosaur here which at the moment he won't let me I must be clicking on the the walls um the NPCs have a lot of problems and the first one is is that uh only certain people like region owners or region estate managers are allowed to uh to start uh NPCs and so as a merchant I can't sell an NPC on the kite market because a lot of people will get it and discover that they don't have permission to use it and what is I see a comment going by there but I can't read it right uh there are there are pros and cons for both the the the uh the the NPCs are kind of hard on the server they're almost as as hard on the server as having another person show up at your venue whereas an animash uh is a uh is just another mesh prim and once you download a an a a an animation into it then it continues running without the server having to send it any more commands and without any bandwidth and so that's uh I think you're going to find animash to be much easier on the server because you're you're you're you're distributing the processing for making something move into into the viewers and leaving the server alone for for doing the things the server does good like the physics and and organizing things and telling everybody what they're supposed to be seeing next so animash is not the same as NPCs and I think in many ways they're a lot better so how do we oh there's one more form of animation that I didn't mention and that is uh you're probably familiar with uh it's possible to make something spin using a uh a lsl call called uh set um oh target omega and so it's easy to make something spin and the viewer does all the work and so this is great on the server and I've seen people try and build uh machines this way and it works great on on circular parts but it can't do reciprocal motion and that's a shame because people want to build models of steam engines and I'm going to uh to click on this and okay that stopped so you can't do reciprocal motion with target omega wait a minute that's going up and down so this actually is an animash object and so I can make it spin around and I can also make it move back and forth and I'm I'm discovering that uh it's it's even easier to make animash machines than it is to make to make rigged clothing and so that's a a wonderful advantage of another wonderful advantage of uh of animash so how do you I want everyone here who at least who is a a creator to learn how to do this for the benefit of our servers and for the benefit of each other and so I use blender and and the answer to the question if anybody asks you say do you know can blender do and the answer is yes before before they finish the question because blender can do everything but it's not always that easy and and when I wrote this list I thought well it's easy I even I learned it you make a 3d model blah blah blah you do all these steps it's like oh my god there are more steps there than I remember and and you say okay well I'm willing to learn all those steps and then you discover there are a few other problems um well but let me let me get to that in another slide there are a bunch of tools to make things better for example there's a tool avastar that's been around for a while but the avastar people pissed me off and I assume a lot of other people because it took them two years to come out with a version of avastar for blender 2.8 I'm told uh that it's buggy and it's gotten more expensive and fortunately that two-year delay caused it there to be a um some competition and there's a product called bento buddy which I can't recommend but I hear good things about it and among other things I'm glad to see the the avastar monopoly broken by somebody else and so I think that is that is a good move but I'm a cheapskate and I and I especially refuse to pay uh uh avastar nowadays because they they took my money once and then they didn't give me a new version or even offer me an upgrade for two years so I've been trying to find out how can I just use blender because the answer to the question is can blender do it yes blender can do anything so I've been been learning uh or if learning from many other people of course and discovering but by myself how to get blender to do everything um avastar used to take b-free updates but starting with blender 2.8 they uh I think they charge a $40 for a copy and then $20 a year to keep your subscription working that's the it's getting more expensive part so uh so once you you have made a mesh and you have rigged it the next step is animating it and I've used quavimator for what seems like a decade or more but of course it only works on avatars and it's very old and it's no longer supported and it doesn't handle the the new bones in the in the in the bento uh body and and so I can't use it anymore I'm forced to learn something else now avastar has some very impressive looking tools for making animations but I haven't used them I'm hoping that that bento buddies has tools like that and if you try and use blender and blender of course can do anything blender knows how to make animations so if you if you try and use blender it's going to uh to uh uh uh it's gonna not it's not it doesn't work out very well it needs a plugin like avastar to help you it unless you're such a cheapskate as me there's ways to use blender to make animations and then tweak them to fix the problems and the problems are all coordinate system problems and I have a friend allies who may be here today who's working on a new plugin that he's going to give away for free for blender that saves animation files correctly and he has a version of that uh available at that URL that you can play with a pre-release version so you heard me say that I I like building I found it easy to build machines so here is a dirt bike I'm working on and the plan with the dirt bike is is that this is a single prim and yet it has all the parts necessary uh moving parts that are moved not by being separate prims and moving the prims they're moved by making uh uh by making animation files so there's an animation file that makes the the front and the rear wheels bounce up and down and if I click on that they bounce slower and slower depending on which animation file it's running there's an animation to turn the wheel left and turn the wheel right and so on and there's even an animation to make the the wheel spin that's not spinning yet oh that's not it either uh somehow I I skipped over the wheel spinning but here's all of the rules actually I keep finding more rules that linden labs never seems to do anything in in the the logical way they always take something that they they had before and they collude it until it it kind of does something new so uh instead of giving us a better uh system avatar they they collude it with wearable avatars and the system avatar is still there underneath it and invisible and wasting cpu cycles they uh they could have given us mesh a long time ago and instead they did a colluge called uh sculptees and they could have um done animesh as a new type of object but instead they sort of collude the the mesh avatars until they they didn't have to be worn to be working and so we ended up with all these funny rules you can only use the the bento bone names and so if you were to look inside this motorcycle you would find that it has a pelvis because every avatar is required to have a pelvis and then it has a torso bone which is used to turn the steering wheel left and rather the handlebar left and right and then it has a chest bone which is used to cause the um uh the the the the springs to compress up and down as as the motorcycle runs over bumps and then it uses the neck bone to spin the wheel around and i keep laughing about this but i've never tried it if i was to run this on an avatar it would make your head spin around instead of the wheel and then the the uh uh the rear wheel and the frame are bouncing up and down using an m tail bone and the the rear wheel spins on one of the m tail uh bones as well so you have to find a way to contort the system bones or you have to use the system bone names but rule number three up there i think is that you have to use you have to obey the hierarchy so you're not allowed to have the chest bone and the and the and the torso bone each doing something different because whenever the torso bone rotates it rotates the chest bone with it and so you have to obey the hierarchy and in order to make the rear wheels turn i had to use a bone m tail one that is independent from the chest at any rate it's the the rules just go on and on and i shouldn't even uh talk about them all but they make my life miserable ah here's a uh a fun slide the way linden labs apparently did this is if you load a an animash and it's missing some bones it inserts the bones for you in the right order so if you put the bones out of order they get moved back into order which causes your your mesh to be contorted unless you obeyed the hierarchy and if you don't have bones like uh i have a whale oh and here i'll i'll drag the whale out here for you to look at it i have a whale and of course whales as you know don't have legs and i'm having the um the wall problem whales don't have legs but linden labs as they loaded loaded my whale um animash they felt the need to um to add legs and so in that slide you see that the whale has um and uh is that that whale flying out here yet no so the whale has uh uh leg bones but they're just hanging down they don't uh they they aren't animated by any of my animation so i never noticed that that somebody stuck them in and some of these objects it's really fun to watch them at work because the uh uh well and the these red pictures were made by using the the developer menu in in firestorm to uh to make the the the bone what is it called i think it's called the the collision skeleton visible and so it's fun to watch some of these things bounce around and and do go through strange contortions because i made something that that wasn't supposed to be a uh an avatar and yet there's an avatar body inside it so the uh these rules uh they they they make my job miserable because there's all sorts of things i want to do that an avatar it doesn't want doesn't need to do and but that means animash isn't allowed to do it this is supposed to be a sail for a sail boat and it's flapping in the wind so i thought this was going to be great i would build a tall ship i would put 14 sails on it all of the sails would be flapping in the wind and life would be great but there aren't enough bones in the bento avatar to to to make all the sails uh flap i'm not allowed to make each sail a copy of each other with the same bones because the the bones are all moved together and all the rules conspire to make it impossible to build a sailboat with a lot of sails maybe a sloop with three sails i can i can use the left and the right hand and the face bones for the for the spinnaker but oh then i'd run out of uh of bones for some of the other uh parts of the of the boat that i want and so i'm i'm unhappy about that collage and i teach a class every wednesday and if i forget to mention that i've invited everyone at oscc to come to that class and watch me do a speed build of a of a mesh object and in that class one of my students a couple weeks ago said you must hate animash uh oh i skipped did i did i skip a slide because it's supposed to be talking about how um how it um yeah how these rules ruin my day you must hate animash well no i don't hate it i i wish that i could do more things with it but i there i'm finding a lot of things i can do i can't do the sailboat i want and i can't do water i had this vision that i would make water out of animash and this is just an eight by eight patch of water so it has 64 bones and well animash you're allowed to have 159 bones so that should be enough but most of those bones are used up in the hierarchy and you can't find 64 of them that that are um free to move independently like the m tail one moves the m tail two and the three and the four and the five and the six and so all of those six bones you can only use one of them to make an independently moving bone so no i don't hate animash i just wish i could do more however there's only so many hours in the day and uh and i can't i can't finish i can't make all the things i want to make that that stay inside the rule the and so um it's probably just as well that there are rules preventing me from from making everything in the universe so i don't have as it turns out a expo speakers booth because i have something better uh in expo uh zone four booth 22 i have the the ocean engineering booth there and it's much larger so i have dinosaurs wandering around there and i have sailboats uh to show off and most of the animash objects that you see here on the stage i i have them sitting out there and you can click on them and every time you click on yeah there's a rule of animash you're not allowed to left click on them you're only allowed to right click on them so if you right click and hit touch i guess you have to know that because i don't have a sign they will switch between one animation and the next and so you can see all the animations now people are starting to click on them already you can see all the animations that that they have inside obviously some of these things don't didn't have animations to start with so how can you learn uh to do this and the answer is of course uh you have to learn blender and then you have to learn all of these these special rules about open sim and a lot of the there are there are a million uh tutorials on youtube but most of them don't talk about specific open sim issues and so uh i had to figure a bunch of stuff out myself and now i'm trying to share it with everyone i have a class every wednesday morning and like i said next wednesday is a special oscc class and i also got tired of doing the beginner stuff every wednesday morning and so i started a youtube channel and it's a terrible channel it has horrible horrible production quality because it's just a blender screen and me talking and and it's editing is awful but it has the essential information for example the thing that bugs me about a lot of tutorials is is that they they they try and make you memorize the uh the shortcut keys so everybody knows that you hit a to do this and control a to do that and capital d to do that in lowercase d to do something else and you have to memorize i like 128 keycaps before you can use blender and i say no you can learn blender without memorization first so i teach that in in my youtube channel and it it doesn't have a patreon channel and i'm not trying to monetize it it's just trying to get the information out there also uh mike lori who gave the talk before this when he teaches a blender class every sunday in kitely and so you could uh go to that one as well and as a matter of fact i often show up there and when mike forgets to come and teach his own class i am the guest lecturer that has happened and uh and let's see oh i uh i am going to have to run but you can go to expo zone four and i have copies of all these slides there that you there's animash for you to click on there i'm not going to be there after this talk because i have a family christmas event to get to but i will be around uh the the conference all day tomorrow and you may interrupt me anytime and ask any question about blender and if i know the answer i'll even tell it to you all right kayaker gosh thank you so much and you guys in the slides that he's talking about you can pick up that and there is uh he has the link to his youtube channel as well in here so you can get it all at his booth in expo zone four booth 22 so kayaker magic thank you so much have a good holiday celebration and um thank you for sharing all your fantastic insights into animash okay thank you for having me all right as a reminder to our audience you will want to check out conference dot open simulator dot org to see what's coming up at the conference schedule following this session we have a little break in our next session we'll begin at 3 30 p.m it's entitled the creativity and writers panel so check it out also we encourage you to visit oscc 21 poster expo in the oscc expo three region and to find accompanying information and presentations and explore the hypergrid resources in oscc expo two region along with that the sponsor and crowd funder booths are located throughout all the oscc expo region so jump around have fun enjoy yourselves in our break and we'll see you back here at 3 30