precisions about avatar

12 views
Skip to first unread message

camilla

unread,
Mar 12, 2009, 12:29:25 PM3/12/09
to Open Avatars and Content for Metaverse
Hello,

Being a content creator in SL since 2 years, I have always been
frustrated of the poor quality of the avatar mesh, and wanted to
explore what could be improved.
So last year I have been working on a female avatar, as an experiment
when I discovered RealXtend possibilities. I managed to import it into
Rex, with a basic walk anim.

I would be very glad to bring it to the opensim community, it would be
way to bring life to this project that never went out of my HD :) but
I would need to know more details about how the opensim avatar system
works, so that I can modify the rig to make it fit with opensim specs.

My avatar uses blender bone driven shapes to correct deformation at
shoulders and knees, for instance. Is it supported ?

What would be a reasonable vertex count ? I suspect my av to be a bit
heavy, but I could try to reduce the count.

How do you plan to handle the texturing ? For now I have 2 UV maps,
one for the body, one for the head. What layers would be supported ? I
started making a color texture, it needs to be finished. Will normal
maps be supported ? It could be a nice way to achieve details while
keeping the vert count low.

camilla

unread,
Mar 12, 2009, 12:36:48 PM3/12/09
to Open Avatars and Content for Metaverse
Regarding importing the CMU bvh files, I have read an awesome paper,
available at :

http://wiki.blender.org/index.php/Doc:Tutorials/Animation/MoCap

This is far beyond my animation skills, but I think its a good basis
to read for someone willing to dive into this nightmare :)

Tommi Laukkanen

unread,
Mar 12, 2009, 1:13:42 PM3/12/09
to Open Avatars and Content for Metaverse
Hello Camilla,

I am very happy to welcome you to the project. Your work sounds
promising and it is interesting to see the details. Our current plan
is to export model to Collada format either using ready Collada
exporter or custom made exporter if all required features are not
supported by the exporter. I am uncertain whether existing Collada
exporters support any kind of vertex bone weights. Once it is in
collada we can again use existing or self made importers to import the
model to IdealistViewer and realXtend. It would be interesting to know
which model format you used for the realXtend import.

By now you have probably figured out that we have some programming to
do once we get the model in to usable shape to get it to
idealistviewer. I will personally take care of the import / export
implementation if required but as always all help is much appreciated.

Any contribution to specification about bones and texturing is very
welcome as well. What is the best way to handle clothes and
accessories which need separate models but have to move with the
skeleton? How can we achieve state of art quality with our avatars.
Your suggestion about normal map sounds intriquing. Any ways to create
the rendered model more life like are interesting topics.

I have added you to our content repository so you can contribute your
content when you feel ready. Please note that our content license is
creative commons: http://creativecommons.org/licenses/by/3.0/

http://code.google.com/p/open-content-for-metaverse/

best regards,
Tommi Laukkanen

Tommi Laukkanen

unread,
Mar 12, 2009, 1:19:47 PM3/12/09
to Open Avatars and Content for Metaverse
Very nice tutorial. I will add it to our wiki page.

regards,
Tommi

camilla

unread,
Mar 12, 2009, 2:36:17 PM3/12/09
to Open Avatars and Content for Metaverse
Thank you very much for your answers,

Please note that all the knowledge I have about avatar creation was
gathered month after month, learning on the fly while exploring new
things. I have no other formation than what I have learnt in my
secondlife creator path, and thousands hours spent self learning
blender.

This said, there are a few things I can say :

Exporting the vertex bone weights is necessary. I don't know much
about collada format yet, but from what I read, despite collada does
support this, it seems you were right about blender -> collada
exporters : they don't seem to export bones weights. This is a
critical feature if we want good looking avatars.

Bone weighting is a good basis to deform the mesh in animations. But,
in some cases, like shoulders, knees, elbows, just to mention the main
ones, I think they are not sufficient to create believable, human like
movement. Blender allows to blend mesh deformation driven by bones
rotation ( You can see http://kokcito.tk/rvk/ipo.html by Jorge Rocha
if I am not clear ) .
The format I used to export my mesh to rex was OGRE. Ogre allows to
bake the above mentioned shape corrections over the skeleton
animation, though this was quite complex to put all together. The big
problem, is that these mesh corrective deformations are VERY heavy in
the animation, as every vertex position is described in the time. In
the end I don't think it would be doable on a large scale, as this
would eat too much bandwidth.
It would be very interesting to find out how to implement this. I am
almost sure the SL avata

camilla

unread,
Mar 12, 2009, 2:57:00 PM3/12/09
to Open Avatars and Content for Metaverse
( sorry for the cut, accidentally hit a key, that posted it before the
end )

...I am almost sure the the SL avatar implements it some way, it is
quite obvious in the hip/tigh region ( even overdone here, leading to
ugly texture stretching ).

Regarding clothing, I managed to import a skirt for my av in rex too,
using a Ogre mesh that had the same skeleton and weighting than my av
and shared the same center.
This is all rather complex to do, and certainly not user friendly. I
mean, I managed to do it after days of learning how OGRE works,
certainly people who are quite used to OGRE would do it in a snap, but
I think that the common opensim user ( the end user, I mean ) would
probably want to be able to do this in a more instinctive way. In this
sense, even if it has serious caveats, the SL Skirt, Pants system in
appearence editor is a genius thing.
I would say that the common user shouldn't need to follow a steep
learning curve to be able to add their custom clothes. It could be a
good thing to provide ready made bases, compatible with the avatar and
animations, and that would be easily modifiable with sliders or
deformation maps. Easier to talk about this than making it true :)

About 'state of the art' avatars, I am certainly not in position to
rule here...
I would just point two things that are really frustrating in SL : the
UV mapping SHOULD be consistent in density, and, no visible or too
obvious texture stretching should appear when animation parts. This is
what I am trying to achieve on my AV work.

I will try to clean up my blend files, and will post them soon, even
if they are absolutely not finished or ready to export anywhere.
Hopefully, and I would be honoured by this, someone will pick them and
work on it , in paralel to what I will try to do my side.

Dahlia Trimble

unread,
Mar 12, 2009, 4:38:55 PM3/12/09
to open-content-...@googlegroups.com
Hi camilla,

Thank you for the information, and welcome to the group!

I cant speak about the Realxtend process, but currently for Idealist viewer an "Animated Mesh" can be used as an avatar. I've been successful at creating 3DS Max biped based avatars and attaching the biped skeleton using a skin modifier and animating the character in Idealist. I animated the biped using a combination of motion capture sequences and hand edited keyframes. Then I arranged the sequences together into one long sequence and noted the start and stop frames for each animation such as walking, sitting, standing, dancing, etc. The mesh was then exported from max using a third party Direct X exporter and saved to a file. Idealist can use different avatars in Direct X format and load them at startup. I then had to change the (currently hard coded) animation keyframe indexes in Idealist to correspond to the proper sequences in my mesh. My hope for Idealist in the future is to allow for more run-time options of other avatars and animated meshes. I'm not certain now if the current design would allow for dynamically loaded animation sequences similar to SL. as the mesh animations are managed by the underlying Irrlicht graphics library and it may require modifications to this library in order for an application to directly manipulate keyframe sequences at runtime. However in the current form Idealist allows for a wide variety of predefined avatars and other animated meshes and should provide a lot of flexibility to avatar designers who are comfortable creating keyframe sequences that can be included with the avatar mesh.

Most of my experience and training in character design has involved using 3DS Max as a development platform. I have much less experience with Blender, but I have created some box modeled characters in Blender and animated then with skeletons and weight painting. I prefer weight painting to envelopes, but since I have little experience with Blender I can't say which technique would produce the best quality animations for human form characters. I can do a lot more using the physique modifer in Max than with the skin modifier, but as yet I have been unable to successfully bring an animated character into Idealist which uses physique.

Tommi Laukkanen

unread,
Mar 14, 2009, 3:33:27 AM3/14/09
to Open Avatars and Content for Metaverse


Hey

Once we have a model with different techniques on it we can start
experimenting how to export to Collada and further to IdealistViewer.
Vertex bone weights are probably supported on collada but how about
the other techniques mentioned? It would be nice to get a list of
possible techniques for handling skin vertex movement with bones to
the project page at opensimulator wiki:

http://opensimulator.org/wiki/OpenSimulator_Avatar

We could use this list as basis for Collada research...
-Tommi

Tommi Laukkanen

unread,
Mar 15, 2009, 1:58:21 AM3/15/09
to Open Avatars and Content for Metaverse
Just checked that irrlicht (3d engine that IdealistViewer uses) has
builtin support for Collada. I would expect that at least a basic
import of character would work.

regards,
Tommi
Reply all
Reply to author
Forward
0 new messages