Hash Fellow robcat2075 Posted March 26, 2015 Hash Fellow Posted March 26, 2015 So you want to snap bones to CPs? This is how it can be done... Episode 1 is on YouTube. A little bit of set-up is done Episode 2 is on YouTube. Pose export magic. Ta-Dahhh! Quote
detbear Posted March 26, 2015 Posted March 26, 2015 Thanks RC, I look forward to seeing how you solved this. I have looked for a solution on several occassions as you know Quote
detbear Posted March 26, 2015 Posted March 26, 2015 That's how I set up a similar rig in one of my previous posts. But as I pointed out, the setup time to create the cp groups makes this method too time consuming for High Mesh Models. Can it be done: YES IS it way too time consuming on a high mesh model: YES. BUT WITH THAT SAID.....This group constraint method is a good tool and method for a low cp count situation.. Quote
nemyax Posted March 26, 2015 Posted March 26, 2015 Yes, unless you need to implement Episode 2, this whole setup is a bit of a Heath Robinson. For strictly Episode-1 stuff you'd be better off taking screenshots of CPs' info boxes and punching the position values into bone properties. Quote
Hash Fellow robcat2075 Posted March 26, 2015 Author Hash Fellow Posted March 26, 2015 I still hold that a macro in a text editor could do the bone creation and placement for you. Quote
detbear Posted March 26, 2015 Posted March 26, 2015 HEY RC!!, Don't take my post the wrong way.... What you've done there is great and I appreciate your efforts. The group constraint itself is used very little by most A:Mers. It has valuable uses. And your example here is certainly worthy of the effort. There's no telling what kind of cool setup for a rig could be created by using your method there. I think with some thought and planning what you have a base for there could open the door for AUTOMATIC rig morphs and the like. I like your example. It is very good. Quote
Hash Fellow robcat2075 Posted March 26, 2015 Author Hash Fellow Posted March 26, 2015 No, I'm just saying that if the repetitive nature of the concept is the problem, that much could be automated with text editing. That said... I'm not sure what a Heath Robinson is. Quote
itsjustme Posted March 26, 2015 Posted March 26, 2015 No, I'm just saying that if the repetitive nature of the concept is the problem, that much could be automated with text editing. That said... I'm not sure what a Heath Robinson is. Maybe the Heath Robinson here: https://en.wikipedia.org/wiki/W._Heath_Robinson What I think is being misunderstood is that the setup would be a pre-made construct and wouldn't have to be made from scratch every time. There would be some hurdles, but a character installation rig could be made using this method. Quote
detbear Posted March 26, 2015 Posted March 26, 2015 Yes....I'm not good at all with explaining things via text: BUT yes....I was attempting to make note of the rigging potentials. ALSO......Robert is correct. A macro to place bones on every cp of a heavy model would be ideal. There are models out there with morphs on them that could be automatically matched in a pose and then the pose could be connected to the joint movement. That way a heavy meshed, imported model would not need to be re-weighted. Therefore the textures from the external could also remain intact. Quote
Hash Fellow robcat2075 Posted March 27, 2015 Author Hash Fellow Posted March 27, 2015 There are models out there with morphs on them that could be automatically matched in a pose and then the pose could be connected to the joint movement. That way a heavy meshed, imported model would not need to be re-weighted. Therefore the textures from the external could also remain intact. I don't see bone snap helping that. If you have 1000 points you have to match between poses, doing it with 1000 bones won't be any faster than snap-to-point which we already have. Why is snap-to-point not enough for that? Quote
Admin Rodney Posted March 27, 2015 Admin Posted March 27, 2015 I'm trying to imagine what success might look like so bear with me here.Of course there is solving the process of matching Bones to CPs but there is also the matter of what that would accomplish that couldn't be accomplished in some better way.But... moving on...I note the following:It appears the minimum required for a CP to be assigned to a Group is the following entry in the Model:(Scroll down in window to see all code) [Model]Name=CP11Pivot=-13.3138 0 0Name=CP22Pivot=14.8886 -0.0715798 0[/Model] And for the Group Constraint it gets a bit more complicated but we need it's corresponding Bone (already existing in a/the Model) to have the following (in an Action): (Scroll down in window to see all code) [Action] MatchName=Bones MatchName=Bone1 GroupTarget=..|..|Groups|CP1 MatchName=Rotate MatchName=X 1 0 -2.71051e-018 MatchName=Y 1 0 5.55112e-015 MatchName=Z 1 0 0 MatchName=W 1 0 100 MatchName=Translate.X 1 0 0 MatchName=Translate.Y 1 0 0 MatchName=Translate.Z 1 0 -0.000134537 [/Action] The Action may not require all these various channels (we'd have to test) but that is what is created in the natural order of activating the Group constraint. The critical part of the assignment being: /// The beginning of the constraint container GroupTarget=..|..|Groups|CP1 /// GroupTarget= followed by the location and name of the Group to connect to which we can assume could be same name for easy identification ... /// Additional Orientation information as required** /// The end of the constraint container ** While I'm sure this ommission (and direct manipulation of the file) is not recommended my tests indicate the orientation data can be omitted and A:M will resolve the constraint automatically. Somewhat related... This process of creating Bones and attaching (or placing) them at CPs is not unlike the creation of Skydome/Light Rigs where an array of Lights (basically the same as Bones in A:M) is created. The primary addition is that of 'parenting' the Bones/Lights to specific CPs (in this case using the Group Constraint. Note that in the above I haven't moved on to look at the orientation and length of the Bone that would place the Bone at a specific location. In Robert's video he shows how to get the ends of the Bones at the next CPs (By using the base of the next Bone in the chain) but I would imagine that where the Bone points could be any number of different locations. Alternately, the bases of every Bone might be desired to be all be at the same location while their tips/ends might be where individual CPs are located. And another observation... In some cases a workflow helper to match Bone locations to CPS might be as simple as this: 1. Establish your Model/mesh at a scale where the grid (of the Model space) most accurately places the majority of Control Points at or on a grid intersection 2. Establish your Bones at the same or similar scale 3. Select all CPs, Right Click and Snap to Grid 4. Select a Bone, Right Clock and Snap to Grid (Note that we cannot multiple select Bones so another approach may be necessary) When creating Bones the Snap Manipulator to Grid icon could be toggled on to ensure all Bone origins are already at an intersection of the grid. Or something like that... I'd be curious to see a mockup of what success might look like for even a simple case. I can thing of one: connecting all of the CPs of a mouth to a ring of Bones to better facilitate dialogue/articulation Quote
detbear Posted March 27, 2015 Posted March 27, 2015 Robert is correct. The cp "snap to" works really well. I for one am very greatful that they chose to add that. For a case where someone would like to have each cp controlled by a bone, a macro would cut down on the setup time. Quote
Admin Rodney Posted March 27, 2015 Admin Posted March 27, 2015 a macro would cut down on the setup time. As A:M doesn't have macros I assume you refer here to a text editor like Notepad ++? And DOH! I forgot a very important step in my setup of what I'll call the Grid Alignment Method (GAM) above: 1. Establish your Model/mesh at a scale where the grid (of the Model space) most accurately places the majority of Control Points at or on a grid intersection 2. Establish your Bones at the same or similar scale 3. Select all CPs, Right Click and Snap to Grid 4. Select a Bone, Right Clock and Snap to Grid (Note that we cannot multiple select Bones so another approach may be necessary) When creating Bones the Snap Manipulator to Grid icon could be toggled on to ensure all Bone origins are already at an intersection of the grid. ADDED: In either Model Mode or Bones Mode, Right Click and select Auto Assign Bones to connect Bones to CPs. Quote
Hash Fellow robcat2075 Posted March 27, 2015 Author Hash Fellow Posted March 27, 2015 The problem noted in the video where the "Compensate Mode" state wasn't being observed by the Group Constraint will be resolved in v18L, according to Steffen. Quote
nemyax Posted March 27, 2015 Posted March 27, 2015 And how about a bone snapping feature in 18something? =) Quote
Hash Fellow robcat2075 Posted March 27, 2015 Author Hash Fellow Posted March 27, 2015 And how about a bone snapping feature in 18something? =) You could ask for that. I think the idea needs to be brainstormed a bit as to how it works in the interface. Quote
Fuchur Posted March 27, 2015 Posted March 27, 2015 You may like to have a look at the next versions... See you *Fuchur* Quote
serg2 Posted March 28, 2015 Posted March 28, 2015 This is a very interesting ability. Perhaps there is a little grain to create a more user friendly features "PathDeform". (Like how PathDeform solved, such as Cinema4d and 3DSMax) Quote
Hash Fellow robcat2075 Posted March 29, 2015 Author Hash Fellow Posted March 29, 2015 You may like to have a look at the next versions... See you *Fuchur* Is it possible to make this more interactive, so a trip to a menu isn't needed for each bone? What if holding down a control key while you moved the bone would make it snap to whatever bone the cursor is nearest? Sort of like moving points in "snap to grid"; the CP follows the cursor and jumps to whatever grid point the cursor is nearest. I also think people were wanting to be able to snap the end of the bone. If the dragging scenario were available you could use it for both the origin and endpoints. Quote
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.