Why the SL Avatar Mesh Fails

by Alphaville Herald on 28/04/09 at 7:37 am

by Tenshi Vielle, fabulous fashionista

Slmesh

slmesh.jpg – Courtesy of Annyka Beckers, creator of Blowpop Skins

Inan amazing feat of web-stumbling, it has been revealed that 3D mesheswork best when they do NOT contain triangles. 

Triangles, due to theirodd nature when subjected to division createbumps and humps in the avatar's appearance. We, of course, see thisnearly every damned time we take a screenshot in Second Life.  You cansee it on my avatar in this shot, mostly on the inside of my right elbow and just below the avatar's breast.

Please allow me to quote Blender Newbies (lulz, Newbie facts) for their "a3D Modeling For Dummies" explanation:

358495

bumps and humps – due to triangled avatars meshes

"Friday, November 14, 2008 3D Mesh Topology Tip: Quads vs. Triangles

So,what's the big deal about whether you use quads or triangles in your 3Dmesh? It's really a very simple issue but, it does cause some confusionfor beginning modelers. Let's take a look at some of the issues.

First, let's make sure we understand the terms.

Atriangle, of course, is a polygon that consists of three sides. In 3Dmodeling, you also have to consider that those three sides (calledEdges) are connected by three vertices.

A quad is a polygon, but with four sides and vertices.

In3D modeling, the issue with using quads or triangles revolves aroundsubdividing, edgeloops, and smoothing. Generally, this would includeorganic-type modeling (faces, bodies, animals, etc.), things that havepotential for movement (bending and flexing) or are designed with anorganic aspect to their style (sport cars, overpriced uncomfortablefurniture, etc.). These are generally modeled with mostly quads.

Subdividing

This one's easy. You can see the issue in basic math.

Quads: Four divided by Two equals Two. Very nice. Balanced.

Triangles: Three divided by Two equals One-and-a-half. Yuck. Unbalanced. How do you resolve the half-part that's left over?

Thisbecomes an issue with 3D modeling because the purpose of subdividing amesh is to allow for more detail to be added to the model. This is mucheasier to do when you have quads because the results are predictable.With triangles, subdividing can become tricky because the balance ofthe flow of vertices gets interrupted."

For more information, you can also visit this link.

18 Responses to “Why the SL Avatar Mesh Fails”

  1. Anna Gulaev

    Apr 28th, 2009

    What you are seeing at the elbow is a joint. The mesh is rigid, so when you move the two parts of the arm around the elbow you create a gap that has to be filled in.

    I don’t know what you’re seeing under the breast since the image is not high enough resolution to see a problem. I think mostly what you are seeing is a lack of antialiasing.

  2. Witness X

    Apr 28th, 2009

    Sorry, but Tenshi fails the basic technology test.

    No matter how the models are built, they have to be converted to triangles anyway before they can be rendered. Graphics cards render geometry only as triangles. They’re incapable of handling object surfaces any other way. And no, NURBS patches are not different, you can send patch geometry to cards but they have to convert them to triangles before they hit the rendering pipeline.

    So, sorry, no, Tenshi. Most models are built in quads, but they’re tesselated before rendering anyway.

    This article was built on a foundation of complete ignorance.

  3. Oscar Page

    Apr 28th, 2009

    I’ve been complaining about the avatar mesh for…at least over 2 years now. I’ve had two triangle poking out either side of my middle back forever. Four months into the game, when I was first creating my shape I noticed them and the only way I could get them to go away would be to reduce my shape beyond recognition. As for clothing parts where triangles are the WORST are on the inner thighs. Put on a pair of jeans and try out a sit pose that has your legs open (i.e. 99% of male sits). You’ll see how awfully blurred the textures are. The fingers are also horrible with triangular bumps. Often I’ll have to clone stamp off the triangles on my hands in Photoshop for my shots. Hop on a posestand and run your camera around your hands and you’ll see what I’m talking about.

  4. Eva Ryan

    Apr 28th, 2009

    @Oscar

    “I’ve been complaining about the avatar mesh for…at least over 2 years now.”

    I’ve been complaining since 2005…haven’t gotten anywhere yet, about the mesh, and lack of attachment points, such as neck, either side of jaw, tops of ears, forehead, top of hand, bottom of hand, et al.

  5. Anon

    Apr 29th, 2009

    I guess the Writer of this article has failed at actually looking at how the models render in second life: turn on wireframe…

    Everything, is in triangles. As Witness X mentioned: Yes everything is converted into to triangles in the end.

  6. Nice theory

    Apr 29th, 2009

    Nice theory. Too bad it’s wrong. Everything is converted to triangles, if it isn’t already, before rendering. Using quads is important mainly for SUB DIVISION modeling (you’ll notice it’s a sub-d tip/tutorial you linked to). That’s only for the modeling stage to allow you to get a nice smooth mesh, which is then internally converted to nice triangles. Its the same for anything, nurbs, sub-ds etc. These methods are almost always exclusively used for high detailed models which are rendered OFFLINE (like you see in the movies etc)

    The problem you see in sl is due to the joint/bone system (or whatever method they are using to deform the mesh) in combination with the use of a low poly mesh. This could be minimized by tweaking the joints and using meshes with higher detail, but things are going to run slower and it still won’t be perfect. That’s because the SL mesh is customizable. So many different shapes and sizes can be created. It’s impossible to create poses that work perfectly on every shape.

  7. Witness X

    Apr 29th, 2009

    Oscar Page hits on the real problem with the SL meshes.

    Here’s how it works:

    This is called UV mapping. It refers to the scalars used to define coordinates on a texture map with respect to rendering that texture on the surface of a 3D object. Each vertex has a place in the UV map. That place shows the part of the texture map that is anchored to that vertex when the object is rendered. If a model has more vertices in a small area, those vertices should be spread out on the UV map – a lot more than Linden Labs did on their generic “Ruth” model.

    The total fail comes in at the body’s joints and detail areas. The vertices should be spread out on the texture map to allow for more pixels between vertices as they’re laid out over the texture map. Making them too close together puts too few pixels of texture map for the part of the body between those pixels. So when the model moves or does some extreme angle, just a few pixels are made to cover a comparatively large stretched area on the model. So the groin area and the shoulders on our avatars look like crap, and there’s no way to fix it.

    There was a point at which this could have been fixed. The texture scaling defined by the UV maps (each avatar has three UV maps, one for the head, one for the torso, and one for the lower body) could have been made much more smooth than what we currently have for our avatars. Linden Lab can’t fix the existing avatars now, because it would break the appearance of every suit of clothes ever made for SL.

    They could roll out corrected UV avatars, if they wanted to. It is actually possible to figure these things out and make them work, even if you have a previously released avatar body in the field. You’d just need a new avatar body.

    But they won’t.

    Because they’re dicks, and they don’t know what they’re doing.

  8. We

    Apr 29th, 2009

    Triangles aren’t what causes it, rather it’s just low-poly count and ugly stretching and tearing of polys is unavoidable with the ability to make custom animations and the need to stretch and alter the avatar shape to make it unique. Professional developers can make their meshes specifically to fit whatever animations they know it’ll be using, but there isn’t that possibility in Second Life as any of an infinite combination of animations may be used on the SL mesh.

  9. Witness X

    Apr 30th, 2009

    To a point, yes, “We” – you’re mostly right on the geometry tearing. The texture stretch issue could have been helped by better UV’s – but you’re right, the generic models having to be made to work for a wide variety of geometry isn’t helping.

    Then too, the model density decision was made five years ago – modern graphics cards would barely notice the difference if you went to a six-thousand polygon model instead of what we currently have, but I don’t see a way to roll out a new one without really messing up the clothing industry. Sooner or later, though, it has to be done.

  10. We

    Apr 30th, 2009

    You’d also have to keep in mind that the avatars we use weren’t even designed for an infinite amount of animation. When SL, using those avatar meshes, was released it had no custom user animations and an extremely limited amount of base animations at that. It wasn’t until version 1.4 that the ability to add custom animations was added, and the model hadn’t changed any before and after that.

    We are somewhat technology locked in regards to the avatar now. You can’t particularly upgrade it without completely obliterating all of the past work of all the clothing and skin designers. Likely nothing will ever be done about it, SL will keep going along with an old and somewhat flawed avatar mesh until the SL-boat finally sinks or something better comes along.

  11. Alyx Stoklitsky

    Apr 30th, 2009

    The avatar mesh has been shit since day fucking one, and anyone who has ever done any texturing for it knows this already.

    This is not news.

    >You can’t particularly upgrade it without completely obliterating all of the past work of all the clothing and skin designers.

    Yes you can. Just support new and old meshes side by side and phase out the creation of stuff for the old mesh.

  12. Witness X

    Apr 30th, 2009

    Unfortunately while it’s a good idea, that’s not enough to get Linden Lab to do it. They’ve done all sorts of things that appeared stupid at first look, and turned out to be stupider than anyone could possibly have imagined. And they’ve taken ideas that were brilliant, gutted them, dried them in the sun, turned them inside out and put them on their heads as silly hats.

  13. Karl Reisman

    May 1st, 2009

    It why I never got into clothes, it’s not the triangles per se, it’s the bad triangular layout. I worked on thegame industry for years as a character modeler, and the SL mesh is passable as mesh but could heve been “weighted to the joints” better.

    The real crime is that they were very lazy with the UV mapping (how textures relate to the mesh they are applied to) and the templates were made so that the original SL developers would just scan copies of the Abercrombie & Fitch or J. Crew catalogues and just plop theimages on the template with a minimum of editing and let areas such as the sides, the armpits and the crotch distort because at the time, they didnt think it was important.

    Anyone making clothes these days, especially men’s clothes, knows what a hellish area the pecs and shoulders are on an AV, and the “insufficient wiping” smears caused by texture stretching inthe crotch. it’s bad, and I do not see them getting better. the thing is people that WOULD make clohtes and have the talent to do so could make better use of better UV mapping if they used the space more efficiently and made sure the front and back of the texture lined up with a minimum of seam issues.

    They won’t of course, but we can still dream..

    –Karl

  14. Jeremios Constantine

    Oct 25th, 2009

    Anyone who thinks those triangles aren’t bad, just TRY to import the mesh into ZBrush and see how far you get.

  15. Pudding

    Feb 7th, 2012

    Not to mention the crotch area…ugh.

  16. Shnurui

    Mar 29th, 2012

    The mesh.
    Is not the Problem.
    The layout, rigging, and uv template are.

    Also, Triangles randomly sticking out is a KNOWN INTEL PROCESSOR ISSUE. INTEL CAN NOT AND WILL NOT FIX IT. it occurs between the perfect processing and the output to the video surface, after post processing.

  17. Reader

    Mar 29th, 2012

    old threads stay old!

  18. GG3

    Mar 30th, 2012

    Mesh fails because the same old animations used for second-life has been dumped on Mesh.

    Mesh has no flexible points so fingers and toes won’t even move. Hair stretches but that’s about it.

Leave a Reply