Atom Posted July 15, 2016 Share Posted July 15, 2016 (edited) Hi All, I have a rig that is being driven by a mocap file. At certain points the rig actually intersects with itself. Is there an automatic way to cause the rig to not self-intersect? I have tweaked the length of the collar bones in the rig to allow for shoulder more range but I still get intersections. The arm is clearly going through the breast in this image. Edited July 15, 2016 by Atom Quote Link to comment Share on other sites More sharing options...
amm Posted July 15, 2016 Share Posted July 15, 2016 Perhaps there's difference between mocap actress and your 3d model. Thinner figure allows wider angles of arm's movement. Animation layers system is tool for adjusting these offsets, where is needed. Quote Link to comment Share on other sites More sharing options...
Atom Posted July 15, 2016 Author Share Posted July 15, 2016 I was thinking the same thing. Consider the bones as a garment and the weft and warp are off, it is a mis-matched fit for the mesh. I created an offset system, inside of CHOP, for the rotational animated values but I am not exactly sure how to fit the bones to the mesh. They seem like a good match in t-pose. I watched a brief introduction to Animation Layers. I'm not sure exactly how I would populate the layers. Would I have to select each bone then scope a bunch of parameters, make changes and then blend it back together? I played around with trying to turn the mesh into a cloth or solid object but once I added an AutoDopNetwork the .bclip refused to animate the mesh. Quote Link to comment Share on other sites More sharing options...
amm Posted July 15, 2016 Share Posted July 15, 2016 18 minutes ago, Atom said: Would I have to select each bone then scope a bunch of parameters, make changes and then blend it back together? Honestly don't know how exactly this works in H, tried once while ago and it worked. Generally, purpose of animation layer, it is an offset on top of mocap animation or such, such layers system somehow comes together with mocap system - zero value is no offset, something else is additive. I think there is no need to bake it back to original, as long you're in H. Quote Link to comment Share on other sites More sharing options...
michael Posted July 16, 2016 Share Posted July 16, 2016 this is to be expected when you use mocap from one 'actor' to drive the deformation of another 'actor' the only real solution is to adjust the motion to properly deform the mesh to avoid these intersections and adjust the weights to better deform the mesh. I don't know of any application that will solve this automatically. if the mesh was FEM or something that could detect self collisions then you could have, in this case, the arm and chest press against each other rather than intersecting - but even that may not look right. Quote Link to comment Share on other sites More sharing options...
MENOZ Posted July 16, 2016 Share Posted July 16, 2016 I wouldn't expect a rig with three bones to hold up a wide range of movement of a character. This is field of rigging, there are many different approaches to try to solve these problems, you can add bones and corrective shapes to fix interpenetrations. Adjusting the weights anyway is a start, just by looking at the crease in the shoulder I can tell it needs some work. I knkow is not very helpful, but there are tons of threads in internet about rigging, self intersection, shoulders, corrective shapes, pose space deformation, blendshapes and bones... you might find inspiration and ideas to port some of those in houdini. Quote Link to comment Share on other sites More sharing options...
Atom Posted July 16, 2016 Author Share Posted July 16, 2016 Thanks for the feedback. @Michael: I did try the FEM approach. I turned my mesh into a Solid and Organic tissue (I tried both). However, when I did that the AutoDopNetwork drives the mesh and I lose all of my mocap animation. Is there a way to combine both? (i.e FEM and Mocap) Quote Link to comment Share on other sites More sharing options...
michael Posted July 17, 2016 Share Posted July 17, 2016 you'll need to make your mesh into tets, then capture the central tets of the mesh with bones, the rest of the tets will then be simulated. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.