Home Technical Talk

shoulders from japan.

veteran polycounter
Offline / Send Message
pior veteran polycounter
Hey all
I was checking some Japanese 3d console games recently (mgs and ff series) and I think I noticed something.

I'm not 100% sure but I feel that the characters in these titles somehow share the same shoulder topology that I like to refer to as the 'Bender' look. Like the bottom variant labelled '2' here:

I usually wrap a loop from the bottom of the pectoral muscle (or boobs) all the way up to the final attachement point of the deltoid (as seen in '1' and here http://upload.wikimedia.org/wikipedia/commons/thumb/9/93/Deltoideus.png/250px-Deltoideus.png), but if the problem is seen from a vert weighting point of view I'm sure that solution '2' allows for a very easy setup that blends the shoulder-to-upperarm weights in a nice linear manner. It might also allow for better looking extreme movements such as crawling and large sword actions.

I still have tests to run, but what is your view of the problem?

References :


  • thomasp
    Offline / Send Message
    thomasp ngon master
    actually, i've seen the variant in the lower picture more often in production models than the one from above (which i'd use and recommend myself).

    i don't think it's a japanese thing, more of a "traditional" way of modelling them, used by a majority of artists, including many leads who usually create the initial assets everyone uses later for production. and yes, it makes skinning less confusing at the expense of polys.
    it is also better suited to half-automated shoulder rigs with twist bones and the likes.

    on my current project, i tried to promote the first variant and apparently confused the technical artists quite some. i literally had to show them where to assign which vertices. that's what you get when everyone likes to paint nice weight-gradients, i guess. weak! laugh.gif

    deformation problems are inevitable when the skinning is done in the smooth fashion on a mesh like this - the "bent tube" look strikes again.
    however, you still can tweak your triangulation, so that the hidden edges flow similar to the layout on your upper wireframe. then at least it's possible to fix the skinning without resurfacing the model.
  • MoP
    Offline / Send Message
    MoP polycounter lvl 16
    Pior, also touching on an issue Thomasp raised, for rigging purposes it's probably best if you can see all the triangles - quads can deform oddly if the edges are running in weird directions - you could probably model Fig. 2's quads like that, while still having the triangles running more similar to Fig. 1 - then you could have the best of both worlds.
  • poopinmymouth
    Offline / Send Message
    poopinmymouth polycounter lvl 16
    Actually I've found number 2 looks much better in motion and is easier to rig and make UV seams. I made my first model for Bloodrayne 2 like image 1, and then had to rig it, and one from Monster, that was made like image 2. His was SO much easier to rig, and in the game his looked better also. He's an animator first, so it made sense, and afterwards I tried to figure good blends of the two methods, but I lean much more towards image 2 every time now.

  • Stringer
    Figure 2 is the method I have been using for a number of years, I've found more and more problems with weighting as I approach the more anatomically correct modelling layout of edgeflow. I have a clavicle joint that kicks in when my rigging reaches the point where polys would usually collapse and this takes very good care of my upper arm movements.

    I can confirm that the company Square do use the topology shown in figure 2 for their lower spec poly models, but do vary it ( very slightly )as the polycount increases, bodies tend to remain fairly low and they spend their polycounts wisely on areas of interest, I only know this from the ff viewer that was knocking around the net some time ago, and I was able to grab a lot of the models from the game and study them in Maya.
  • skankerzero
    I've always done the 'bendy straw' method.

    As poop stated, it was something that worked for monster when we worked on BR2, so I just went with it and have loved it ever since.


    Anatomy is great and all, but when you're working with a limited rig and you need to get your character to reach up, nothing beats the bendy straw shoulders.


    I tried making shoulders closer to what real muscle flow worked like for Spy, and I got good results too, but the shoulder rig was a bit more complex than on BR2 and Aeon.

    It's all in working with your animator and seeing what your rig can do.
  • Sage
    Offline / Send Message
    Sage polycounter lvl 16
    That's common practice for pre-rendered characters. That how I made all my 5000 plus character joints but in classic da vinci pose. I always thought it helps mimic how the shoulders deform from in different poses.

  • SouL
    Offline / Send Message
    SouL polycounter lvl 13
    I think the important thing to keep in mind is to have a gap, or extra edge ring to seperate the arm from the torso.

    If you have that, I don't think it really matters if you model the bendy straw way or follow the edge loops of the shoulder.

    Obviously it isn't all down to the model. Bone placement and weighting are also key. Our rigger has been doing an amazing job handling all the shoulder deformation of our characters. But I'd also like to think that our character team has it down pat when making good deforming geometry.
  • Eric Chadwick
    Awesome tips people.
  • Emil Mujanovic
    Offline / Send Message
    Emil Mujanovic polycounter lvl 13
    Great thread!
    I've always been curious as to which would work best. I've always modelled my characters in the bendy straw way and only ever once tried doing it the anatomically correct way. But I've only ever had to rig and animate 2 characters so I've never really had any experimentation to see which would work best.

  • Delaney King
    Offline / Send Message
    Delaney King polycounter lvl 15
    I find bendy straw is a good method, but I would add that modelling it at 45 degrees rather than 90 'leonardo pose' helps define the shoulder muscles better for 90 percent of game motions. My unreal characters had the pectorial model style and they crimped terribly at the range that was needed.

    The anatomical forms and masses of the deltoid and pectorial muscles can be described in the normal map or texture (both of which spread with greater even ness with the bendy straw design.)

    This is one of those good threads!
  • conte
    Offline / Send Message
    conte polycounter lvl 14
  • Rhydian
    Just out of curiousity, has anyone bothered using CATMuscle to clear up the shoulder problems? I've had decent results with it.

    I have never posted and I'm not advertising it or anything, but I've spent months thinking of nothing but shoulders in my spare time and CAT really was my ultimate solution. Of course, if you are using a pre-existing game engine and skeleton it's obviously not going to do anything for you.
  • Neox
    Offline / Send Message
    Neox quad damage
    would be nice if you could show us your results with CAT i'm really curious how it works on lowres geometry
  • skankerzero
    We tried CAT, and it we ran into too many problems with it.

    There's some nice things it can do, but it just wasn't for us. We switched over to Maya for animation.
  • Rens
    Great thread indeed!

    Thanks for the info guys.
  • shotgun
    Offline / Send Message
    shotgun polycounter lvl 16
    Pior: I noticed this shoulder thing in japanese art too. their anatomy feels very 'correct', generally speaking. i think method #1 is correct for itself, meaning, the same approach of loop-overlap must be introduced to every aspect of the figure, otherwise, it simply doesn't work. the deltoid does bulge-out, but it doesn't attach into an edge, its a much smoother integration that attaches surprisingly lower down the bone. the over-bulging of muscles i think is just common practice mistake.
  • claydough
    Offline / Send Message
    claydough polycounter lvl 10
    MoP wrote: »
    you could probably model Fig. 2's quads like that, while still having the triangles running more similar to Fig. 1 - then you could have the best of both worlds.

    bendy straw, edge flow hybrid solution:



    Arm raised above the reference pose using a clavicle rather than shoulder rotation:


  • Eric Chadwick
    Looks pretty good. A bit too stretched upwards in the deformation test, but that's only clavicle like you say.
  • Chai
    Offline / Send Message
    Chai polycounter lvl 14
    great thread, and thank you claydough, this was very helpful to me :)
  • Mark Dygert
    I agree it was a good thread... but...
    lil' necromancy anyone?
  • bugo
    Offline / Send Message
    bugo polycounter lvl 12
    number 2 for sure, it fits better with 10k models and uvseams
  • Chai
    Offline / Send Message
    Chai polycounter lvl 14
    bugo wrote: »
    number 2 for sure, it fits better with 10k models and uvseams

    Was that sarcasm ? :)

    number 1 would have the edge flow from the deltoid (shoulder) muscles to the chest, which is more anatomically correct. (especially when the arm points upwards and pull the shoulder up)
    I find that as I break from the 3k low budget range towards the 6k range and higher, I can afford more anatomically correct forms.

    You have a very strong portfolio, and I find it very curious that you embrace number 2, have you ever tried going with number 1 successfully ? what was your opinion of it ?
  • Rob Galanakis
    I find that with a good rig and higher-poly models, #1 is superior. It allows and encourages much more believable muscle behaviour when deforming, instead of just "deforming" like a tube. Though if simply keeping general volume and ease of setup is the goal, then #2.

    I know this thread was dead, but the discussion on shoulder geo will never die! And we are constantly learning and trying new things to share, no?
  • Eric Chadwick
    I added the images in this thread to the wiki, I hope people don't mind.
    If you want me to take them down, that's fine, just let me know.
  • Rick Stirling
    Offline / Send Message
    Rick Stirling polycounter lvl 14
    Bringing this back from the dead again, I was looking for an online ref for skinning for someone (hard creases on the inside of joints, blending on the outside, self-intersection is fine etc.), but couldn't find any.

    This might be a decent place to discuss it?
  • Eric Chadwick
    What didja wanna know? Heheh

    I know, endless pimpage, but some of that info can be found in pics here...

    I'm also curious about what skinning/weighting methodology people are using these days. On the cowgirl, I used good ol' tried-and-true vert weighting techniques I've learned over time, but not really discussed online except I guess in scattered DVD CG tuts out there. I'll try to elaborate later.
  • Rick Stirling
    Offline / Send Message
    Rick Stirling polycounter lvl 14

    It's great for topology, but not for skinning per se.

    Using Max in a production pipeline I'll often use skinwrap to get a quick weighting with all the bones in the skin modifier, and then use the paint weights brush. I wrote a little skinning tool with 4 or 5 buttons for brush sizes (and a spinner to adjust), and the same for weighting strength. This speeds things up considerably.

    I'll normally blur the weights all around the joints, then go in with a hard brush on the inside of the elbows, backs of the knees, underside of the fingers etc. and pretty much go for 100% weighting to a single bone at the crease.

    We've built a few detailed rig deforming animations, (one for fingers, one for arms etc.), plus one long animation that puts the rig through a bunch of limb bends and then runs through several dozen common ingame animations, getting more extreme towards the end. At the start it's walking, running that sort of thing and a thousand frames later it's firing backwards whilst riding a motorbike.

    Generally I find that the paint weights brush is good enough for most weighting, but I still resort to setting single weights. For eyeballs I'll grab a single vert, grow it to select the entire eyeball, then spin the weight up to 100%
  • the_podman
    Number 2 is only good if you plan on doing "quick weighting" with a standard bipedal bone count. Of course it's going to be easier to rig a grid-style mesh with simple gradient weight maps, but any professional character TD will tell you that vert by vert point weighting will yield more precise deforms. I've skinned up dozens of meshes that have "rubber hose" syndrome that could not be avoided unless the poly budget allows us to model out specific forms and bone structures, and if there is an increased bone count, helper bones to "hold" those edgelooped areas.

    Also, a lot of "form" in some next-gen titles are almost completely dependent on normal maps to help the character "read". Ever see the UT3 characters without the normals maps? Ugly...:)

    Deformation is not usually a high priority with game studios, however, it's changing a bit these days as I've noticed more sub-d style "quad mesh" topologies in next-gen titles.
  • Rick Stirling
    Offline / Send Message
    Rick Stirling polycounter lvl 14
    the_podman wrote: »
    Deformation is not usually a high priority with game studios, however, it's changing a bit these days as I've noticed more sub-d style "quad mesh" topologies in next-gen titles.

    Erik and I spent the last couple of years making it a fairly high priority on several hundred models.
  • Erik-Brear
    Its true! but who is this Thermidor person?

    I really think there is a constant re evaluation of weather you should build your mesh for ease of mapping, lighting or skinning and deformation as not allways do they all meet together well. I recently started building a model at home to test out how well max copes with its Skin-Morph tool. I strongly belive a mesh that folows muscle formation is the best for this. In games we try to keep to this as much as possible, it makes our jobs quicker and the end result look better.
  • Eric Chadwick
    I thought this thread over on TAO had some great tips about skinning/weighting.
  • the_podman
    Erik and I spent the last couple of years making it a fairly high priority on several hundred models.

    That's awesome! I wish more places would. Kudos.

    Here's a personal character I am working on right now. You may recognize him from the Wind Waker game. It's a much higher rez quad sub-d mesh, but it illustrates how much more you can get out of the deforms if you "cut in" as much form as possible and you vert by vert point weight those areas. You'd be surprised at what you could achieve with just one or two extra bones as well.


    I also usually go with the Andrew Loomis "Cape" for the chest area. It's easy to weight paint. Even though the topology is not as organized as a "bender" mesh, you can get really nice creases if you plan the splits in the arms specifically for deform.

    A good test to see just how well your shoulder deforms hold up it to get your character into the "strong man" position:


    I see it all the time with my students. They get frustrated when they start skinning their characters and can't figure out why an arm no longer looks like an arm when it's away from it's bind pose.

    As for the last pic, it illustrates "helper" bones in action. Just two simple extra bones really makes a difference.

    Some of my other "helper" bones in action. These are to simulate muscle slide, low-tech style:


  • Xaltar
    Good thinking Eric. Having a look at the wiki for the first time, wish I had seen it before.

    I go with #1 for the most part but I never rig anything so.....
  • artstream
    Offline / Send Message
    artstream polycounter lvl 11
    I see the "Skin Wrap" modifier being thrown around alot....what exactly does it do?
  • Rick Stirling
    Offline / Send Message
    Rick Stirling polycounter lvl 14
    Skin Wrap projects the skinning from one object to another. It great for getting a model set up as it adds all the skin bones too. It'll let you take an unskinned model and have it rigged in minutes with the default values- then of course you need to go in a do the actual proper weighting.

    We played with the default settings and managed to get deformation that was good enough to go into the game for rapid prototyping.
  • pior
    Offline / Send Message
    pior veteran polycounter
    Pod, can you explain your setup for such helper bones? Like on that pink monster. I understand the principle but never really did that. Are their actions automated? (driven by the main limb bone?)
    And would it be possible to add such bones to a Character Studio biped?
  • MoP
    Offline / Send Message
    MoP polycounter lvl 16
    Pior, yeah, I imagine they're just helper objects (or bones, anything works) set up with either a simple mathematical script, or link constraint, then just skinned in with other bones as usual. So whenever you rotate a forearm, the "bicep" helper bone will move forward and up, or something like that.

    Related topics are "Wire Parameters" in Max, I think it's called "Set Driven Key" in Maya if you want to look up further information.
  • pior
    Offline / Send Message
    pior veteran polycounter
    Well yeah, the math part is where it all stops for me :P I totally understand the principle and even messed with wiring in Maya and Max in the past - I am just curious about the specific settings he used :P
  • Rick Stirling
    Offline / Send Message
    Rick Stirling polycounter lvl 14
    Wire Parameters are what we used in GTA4, but lately I've been experimenting with Float Expression controllers instead - they allow easy clamping, so you can say rotate this bone at 50% of its parents rotation, but only between here and here.

    You can set up float expression controllers for objects to control their position (x, y, or z), rotation (x, y, or z) and scale (x, y, or z). For most roll bones you'd simply set up an expression in their X rotation.

    I've not tried to build a bicep bone, and I don't have max at home, so this is theoretical from here on in...

    Build a helper bone, aligned and parented to the upper arm.

    If it was only going to bulge outwards then that would probably be it's local Z if aligned to the upperarm bone, so in the motion panel (I think, I don't have max here), assign a float expression controller to the Position Z. This'll pop up a dialogue box.

    In the float expression you set up a variable to monitor the local Y rotation of the forearm - this is easy, you hit the create variable button, give it a name (Left_forarm_y_rot woud do) and point to the object you want to monitor (the forearm bone) and select from the list what you want the variable to store. It's something like local.rotation.Y.

    Local will be relation to its parent, in this case the upperarm. The angle between the forearm and the upperarm would likely be say, 0 to about 170 degrees? That'll be in radians as I recall, so you get a number between about 0 and 3. As the arm animates the variable will update constantly.

    Then you use that offset the bicep bone. This is where I'd need to sitting in front of max to figure out the actual maths, but basically you have a input box in the top right of the float expression control and whatever you type in there is what gets applied to the bone. You could leave it blank and nothing would happen, you probably type in a constant and the bone would always stay at a certain value.

    For twist bones, like the upper arm roll you'd probably have created a variable called left_arm_twist_X, so in the expression box you type:
    left_arm_twist_X * 0.5
    When the arm rotates on the X axis, the rollbone will only rotate 50% of that.

    Anyway, back to the bicep...

    You've set up an expression to control the Z position of the bicep bone, and you've got a variable called Left_forarm_y_rot giving you a number betwen 0 and 3. Your actual expression could be as simple as typing:
    This should take your initial Z pos and apply an offset between 0 and 3 units. This might make you arm shoot off into infinity, so you might need reduce that movement by a factor of 10:
    Left_forarm_y_rot * 0.1
    Or make it move 5 times as much:
    Left_forarm_y_rot * 5
    I think that I've probably been more confusing than helpful...
  • claydough
    Offline / Send Message
    claydough polycounter lvl 10

    Seen bits of the following resources here n there but never could find the mother load.
    Sorry if as much is old news to some but...

    I have been combing the internet every so often looking fer a flouroscopy
    collection that was comprehensive enough to use as a general reference for joint placement research.

    Nice thing about flouroscopy is that the xray image is usually videotaped/filmed!( cineradiography. )
    Particularly shoulder video showing the joint/skin positioning with a full range of motion has been
    particularly elusive and desirable ( to me at least ).

    Seems as if, since I last attempted to farm some reference on the internets,
    alot of juicy examples are now online.

    X-ray studies of the joint movements Dr Russell J. Reynolds
    This film illustrates the scope and value of this form of x-rayexamination, especially in case records. The film comprises of a series of x-ray sequences showing movement of the fingers and thumbs, wrists, elbows, shoulders, knees, ankles and feet. 2 segments.

    although the footage is pretty raw ( pub 1948 )
    The direct commons link is HD enuff that when run through hilights/shadows
    ( to dial hilites down with greater tonal range dialed up )
    and the reduce noise filter in after effects,
    the result shows the joint positioning in relation to the outer deformation perfectly through an entire range of motions.

    corrected: ( looks alot better/revealing when playing )
    ( no shadows 0%, ( Hilights 50% 90% tonal width )) ( reduce noise default values )

    low rez preview:
    ( besides the shoulders, nice full range of motion on all the major joint rotations very extensive for 12 minutes )
    [ame=" studies of the joint movements (1948) - YouTube[/ame]

    High defininition version: link right click "save as"
    available thru: http://creativecommons.org/licenses/by-nc-sa/3.0/

    Available on the same website is a nice resolution version of the following motion study: ( Best version I have found other than the gifs floating around: )

    Segment 1 The film is in slow-motion and shows visually how patients walk. The setting is against a grid pattern in an outdoor 'studio'. The patients have key points on their hip and knee marked. Time start: 00:00:00:00 Time end: 00:08:33:00 Length: 00:08:33:00
    low rez preview:
    [ame=" orthopaedic patient (1935) - YouTube[/ame]

    High defininition version: link right click "save as"
    available thru: Creative Commons Attribution-Non-Commercial 2.0 UK: England & Wales

    Also of interest on the internets ( new to me at least )
    Cool phoneme studies from the 60's n 50's. Like the previous footage the body parts can be dialed in nicely with a little image adjustment
    ( it is easy to make out the throat back, lips, joints/teeth and tongue motions made to create the words in the video ) ( no links need to be youTube extracted if wants )

    [ame=" Stevens x-ray film - YouTube[/ame]
    X-ray film of speech organs in action. Recorded in 1962.

    Why did Ken set the soggy net on top of his deck?
    I have put blood on her two clean yellow shoes.

    Uploaded with permission.

    [ame=" X-ray film - YouTube[/ame]
    An x-ray film of the speech organs during articulation of consonant clusters. Recorded in 1958.

    Further information: TRUBY, H.M. (1959), "Acoustic-cineradiographic analysis considerations with special reference to certain consonantal complexes", Acta Radiol. Suppl. 182, 1-227.
  • Eric Chadwick
    Awesome way to come back from the dead!!

    Not sure if you saw this, but Chris Evans is sharing a bunch of flouroscopy videos of his own shoulder in motion.

    Plus he has tons of great rigging/skinning reference links...
  • claydough
    Offline / Send Message
    claydough polycounter lvl 10
    Not sure if you saw this, but Chris Evans is sharing a bunch of flouroscopy videos of his own shoulder in motion.

    Holy Moly!:

    It's like xmas :)

    Nice of him to expose himself to radiation fer the sake of art/science research!
    ( example pics of radiation death from the early days of retail shoe sale flouroscopy machines are pretty gruesome ! )

    If u were going in for surgery anyway however...
    someone should create a:

    Thanks for the great links Eric
    Wish I could find more "modern examples" like these that cover other joint rotations. Even though the resolution isn't as high,
    it is clearer to visualize what is going on. Even so...
    I find the same shadows/highlights filter ( shadow off ) tonal width can help dial in either the skin or joint details.


    before adjustment:

    after: silhouette is an easier read...

    The weightlifting reference is perfect example of an important consideration many seem to miss:

    Ask everyone in a room to lift their arm above their heads and usually they will bring their arm staight up in a frontal arc instead of the classic t-pose "side arc".

    ( seeing ragdolls break with no clavicle constraint really irks me )
Sign In or Register to comment.