I'm looking for a programmer who can help me with some tools. I'm willing to pay for the creation of these tools, and believe they should be freely available.
My personal goal is to make some animations without a lot of the pain and horrors I've gone through in the past. The first tool is a pretty simple modification of the Second Life client. When you upload a BVH animation, the Second Life client will convert it to the internal Second Life animation format and then upload it to the asset server. This modification would simply allow you to save it to the local hard drive, rather than having it be uploaded. The final goal for this tool is the ability to combine deformations that are created traditionally -- by uploading modified BVH files with a different root bone. My current method of combining them uses a tool that Zwagoth made called AnimMaker http://code.google.com/p/par/downloads/detail?name=AnimMaker.zip&can=2 , which requires .anims in order to use. Simply repairing this chain in the existing process is enough for me. And exporting .anim files for local use has other purposes. The second tool I would need is a modification of the Second Life client. I want to be able to export from Second Life a skeleton that includes both appearance/shape changes, and deformations. Exporting them to a BVH file would probably be the easiest way, storing the skeleton data in the hierarchy section. For those that aren't aware, the internal animation format for Second Life allows bones to be repositioned, as well as traditionally rotated. A deformation is an animation that repositions the root end of a bone, making the limb longer, shorter, or otherwise in a totally new position. This allows for avatar shape settings that otherwise wouldn't be possible. An exported skeleton would allow me to create animations in an external animation program, such as Blender, that look exactly as they would look inside Second Life. With an inexact skeleton, the process is to upload an animation, seeing if it looks like it did in the external program, edit the animation to be wrong externally, then upload again and see if it's right in Second Life. And repeat until it's "close enough." While this isn't as useful for a generic animation where the avatar could have any shape settings, for a fixed format avatar (like the ones I make) it's extremely useful. See also: http://www.seawolf-monsters.com/images/wiki/dragongheader01.jpg and http://www.seawolf-monsters.com/wiki/uploads/Gryphon/Gryphon/titlegryphon.jpg . >From the research I've done, exporting the skeleton with the shape/appearance settings applied shouldn't be difficult. However, the deformations are an animation which is applied every frame, and would need to be treated differently. The deformation also applies differently depending on the avatar's shape settings, and I do not know the math involved in that. That is, applying the same deformation to a leg with the shortest shape setting and a leg with the longest shape setting appears to be a multiplicative difference. In the past, I had a tool made by Zwagoth. The usage process involved manually playing the deformations, and a T-pose, and even aligning the avatar facing a certain axis. This was not a problem. And it almost worked, even. But besides the tool being Emerald-based, and the source code getting lost before it could be given to me, it still didn't work completely correct and the skeleton resulted in guesswork a lot of the time. The third tool, which is less important but still very valuable, is a Blender -> Second Life internal animation exporter. Most TPVs allow for the uploading of .anim files through the bulk uploader, since the client converts BVH files to the internal animation format before uploading them anyway. It would be Blender specific as I use Blender to make animations. Since it would be Blender based, it would be written in Python. The documentation for the internal animation format can be found here. http://wiki.secondlife.com/wiki/Internal_Animation_Format To state an example of why this would be useful. I recently created an animation in Blender that had roughly 80 "datapoints" or keyframes. Judging from the internal animation format, the internal animation data would be comparable to the keyframes I had in Blender. I exported the animation as a BVH file -- which turned the data into over 1700 keyframes. In uploading the animation, my Second Life client parsed the BVH file and tried to pick out which data it though was relevant. I ended up with a horrible mess that removed anything subtle and didn't look like what I had originally created, with feet floating off the ground and some joints that should have been moving not doing anything. I'd appreciate any insight or help of any kind on any of these issues. Thank you, Stickman _______________________________________________ Policies and (un)subscribe information available here: http://wiki.secondlife.com/wiki/OpenSource-Dev Please read the policies before posting to keep unmoderated posting privileges