General Category > Ongoing Anim8or Development
Figure Editor: Simultaneously Add, Lengthen, Rotate Bones
Steve:
Raxx: IT looks like there are 3 modes in your video.
1) Add Bone - allows you to drag from the tip of one bone to set the length and angle of the new bone.
2) Rotate Bone - change the angle of a bone.
3) Move Bone - move the start of a child bone relative to it's parent. The bone hierarchy doesn't change, it just adds an offset to the starting position of the child bone.
For 1) I've been experimenting with allowing rotation when adding bones which as far as I can tell does what the video shows. It supports grid-snap (length and angle) constraints.
For 2) Anim8or currently requires 2 mouse actions to rote a bone - click to select, then click-drag the selected bone to rotate it. Eliminating the click-to-select requirement is a good idea - I'll make that change.
For 3) I'll experiment with this as well. How do you make it show the parent-child relations? I can't tell from the video.
nemyax:
It would be helpful to have two modes for skeletons:
* An edit mode similar to objects' point edit mode. You'd move/rotate/scale bone endpoints like you do mesh points. One important difference would be the ability to set the roll.
* A hierarchy mode where you transform bones like you do objects.
Raxx:
Hi Steve,
1) Not sure what your implementation is (if it works, it works). I figure the bone is just a vector, you just change this vector by moving the endpoint like you do anything else in the workspace. This way it follows exactly where the user wants it to go. Some extra code would probably have to be used to make its Y-axis orientation (or roll) similar to its parent.
Related to #3, the Add Bone tool will also need to be able to make free-floating bones. So clicking and dragging in space will make the offset bones, or clicking and dragging from the endpoint of an existing bone will set its origin at that bone's endpoint. Also, there's no longer any need for a "root" bone. Rather, you can keep this root bone internally and hidden (or just call it the origin) if it makes it easier.
I think the way to define added bones' parents would be, if a bone was selected at the time of the adding bone action, it automatically becomes the parent of the new bone. If no bone was selected, the new bone's parent would be the "root". If multiple bones were selected, I suppose the parent of the new bone would still be the root until the user sets it otherwise.
2) Great! This is actually what I thought you'd do for Fast Select with all the tools.
3) As for the parent/child relationships, I kind of clipped it at the end of the video, it shows it for a split second. That program simply has a line with an arrow that points from the child bone to the parent bone. But I think Blender's method is better, where it shows a dashed line running from the child bone's origin to the parent bone's endpoint.
Anime Studio Pro
Blender
A parenting tool would make things a lot easier (call it, say, Set Parent). When enabled you can click and drag from child bone to parent bone to set it. And of course, it can be changed in the bone properties dialog box (drop down menu would be easiest).
--
Re nemyax's post, it'd also be good to be able to set the bone's rotation, scale, and location without affecting its children, possibly by holding shift or control
Steve:
Re 1: A bone is more complex than a vector, it's an orientation, i.e. a 3D coordinate system. This goes along with having an Up vector which a vector doesn't need. But it's all just math :)
Raxx:
Hm, but you can treat its endpoint like a point in space and have the orientation follow, right? Whatever it is, I'll leave it up to you haha.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version