The Mesh Deformer is in testing. Oz Linden still needs more test clothes to test with. While the first part of the Deformer is complete, a second part is just getting started.
The Deformer as is works. I think pretty well. That ‘deforming’ part is being tested. But, a part that was added to the Deformer is the base shapes feature. Currently we can select two base shapes for the Deformer to start its calculations from. But, we could have more base shapes because choice is really what Karl added in.
The only shapes that exist right now are the default female and male. Where are we going to get more? By making and uploading them. But, we can’t do that right now. That upload thing is the part that is in development now.
Darien Caldwell is currently working on that project. The repository branch https://bitbucket.org/oz_linden/viewer-storm-1716 is what Darin is forking for a starting point.
Karl Stiefvater included the ability to upload a shape with rigged mesh as the basis for the deformation. The shape information is to be stored as LLSD in the mesh object header. I have no idea what LLSD is. But, it is clear that the shape will be part of the mesh we upload. Users will NOT be mixing and matching mesh with different base shapes.
Darien thinks the simplest solution for a data format is to use the existing XML format the SL Viewer already exports. (<linden_genepool version=”1.0″>)
To see the export file try the top menu: Develop -> Avatar -> Character Tests -> Appearance to XML. This creates a file named: new archetype.xml. It is supposed to appear in: AppData\Roaming\SecondLife\user_settings. Obviously that is a Windows location. Until a few weeks ago, it went into the Viewer’s install folder in the Character folder. See: JIRA VWR-23983.
I’ve tried this XML export in the Beta and Dev viewers. I couldn’t get it to work. But, it works fine in the main release viewer.
This feature is going to get moved out of the Develop Menu. I don’t know where they will put it. But, it will be out where the users can easily find it. I would guess it will end up in the Advanced menu. The feature will also likely be changed to provide a file save dialog, so the user can choose where to save the data. I think the file sate feature is already in Firestorm.
They will also have to do something to respect the shape permissions and handle the problem when someone tries to export a no transfer shape.
Whatever, this XML file is the format of data that will be used for import of shapes. You can open the file with a web browser or text editor. It contains the appearance sliders settings. This is NOT a file you can use with Blender, 3DMax, Maya, or any other modeling program I know of. I am pretty sure the file will work with the Avastar add-on for Blender and another SL program that’s in the market place… which I can’t remember…
So, we are going to have to wait to see what is developed for working with this file format in modeling programs. We definitely need some way to get this file to affect the avatar model in Blender and other modeling programs. That will likely be a separate project.
If you are working with a humanoid shape that you can make with the in Viewer shape controls, this XML shape export will work pretty well. You will then be able to include the XML file with your mesh upload. Darien has a step-by-step.
But, if you are creating a non-humanoid avatar in Blender or another modeling program, I have no clue how you are going to create this file.
Hi, I just want to clear up a few misconceptions in your article.
A) As you pointed out, the archetype file can be used with Avastar, or with SLAV. Avastar is Blender only, Slav has versions for Blender, 3DSMax, and Maya. However, You don’t necessarily have to have any of those packages to take advantage of the archetype file. The numbers included in the archetype file are simply the apply values for the various avatar morphs the viewer uses. So any system that uses the morphs, can use these values. this includes free alternatives such as the “Avatar.blend” that has been making the rounds for years.
B) As for non-humanoid avatars, Either file will be of use, or not. If your non-humanoid avatar makes use of the SL avatar mesh, then the Archetype file can be used to create a mesh that deforms against that. If your non-humanoid avatar does not use the SL avatar mesh, then you can not.
To be honest, I don’t believe at this time its possible to make any avatar, human or not, that doesn’t use the SL avatar. Changing the existing bones around to make a quadruped for instance, doesn’t have anything to do with the operation of the body sliders or the deformer, or this file.
II hope this clears up a few points. 🙂
Im trying to get my head around this XML export and what it’s used for. So if i make my avatar really FAT with the sliders, i can export this FAT setting as an XML and use it to import with my FAT Hoody i made for my FAT avatar. If i don’t use this FAT XML during import of the Hoody, my FAT hoody would be stretched even FATTER to deform against the default Male or Female base shape… is this correct?
It depends how you design the hoody. If you design a close fitting hoody on the fat avatar and include the fat shape as a base, there will be less deformation. At least that is how I think it will be.
Imagine. If you design the hoody on the default shape, import it to SL, wear it, and then change the appearance sliders… imagine the default shape inside the new shape and draw lines from the default outward along the normals without regard to where the new shape is… the lines in some cases will not pass through their respective polygon on the new shape. This means the ‘deformed’ mesh will not be following the avatar body all that well. It is this distortion that using various base shapes eliminates.
In the case of base shapes, you draw lines outward along the normal from the base shape. We assume the end user will make smaller changes to the shape and we will have shorter lines.
With small shape changes, it doesn’t matter… much. At the extremes it matters more.
Until we can import some shapes, I can’t test that thinking.
Nal has it about right. The XML just defines the ‘starting point’ for the deformation. The shorter distance the vertices have to travel to fit, the less distortion and corruption. If you’re very fat, and the deform is against a very thin shape, they vertices have a *long* way to go, and the result will be very distorted.
The idea is creators can offer the deformer with an array of base shapes to give the best results for a variety of body sizes.
Thanks for the additional example and explanation.