Anim8or Community
General Category => Ongoing Anim8or Development => Topic started by: neirao on March 24, 2015, 05:16:08 pm
-
Now the fast bone work fine in 1166 version!! :)
hey Steve what you know about to make the fast bones in figure mode we can "add new bone and together rotate the bone?" is very usefull for us! thanks!
-
hi Steve,
can in new versions insert this functions in Figure Mode?
in Fast Mode "enabled multiple activated buttons" on creation of new bone:
(http://www.anim8or.com/learn/manual/buttons/b_bone_u.gif)+(http://www.anim8or.com/learn/manual/buttons/b_bone_len_u.gif)+(http://www.anim8or.com/learn/manual/buttons/b_angle_u.gif) 1 - allow in moment of "add new bone" [rotate] and [change the length] in same time!
(http://www.anim8or.com/learn/manual/buttons/b_bone_len_u.gif)+(http://www.anim8or.com/learn/manual/buttons/b_angle_u.gif) 2 - in "existing bones" allow [rotate] and [change the length] in same time!
is very usefull and time saved and "smooth" bones creations!! :)
in atual mode the buttons has "switch" activation in this my idea we can enable this 3 buttons togheters(is the same atual way one click "on", click again "off") but without the "switch" ...
i think that this is simple for implements in FAST MODE! :)
what you and the guys think about this? 8)
ps: Thanks for this new version!
-
Hi neirao
If 3 functions are enabled, new bone, new length and rotate bone.
I suppose things are then dependant on mouse button, eg: Left mouse for new bone, middle mouse button for length, and right mouse for rotate.
If that's the plan, then '+1'. (http://s6.postimg.org/p4cqdev8d/grysmile.gif)
-
I think what neirao wants is something that's standard in just about all animation software now---click and drag bones. Anim8or has a lot of catching up to do in the rigging and animation department...
This video I recorded just now. The user should be able to make bones easily and naturally like this, and also the bones shouldn't be restricted to the end points of their parents, with the ability to move the bones (both when rigging and animating).
I forgot to include, you can click and drag around the endpoints of the bones as well, allowing you to scale and rotate the bones by moving the endpoints rather than the awkward method of rotating, then scaling, then rotating, then scaling, then rotating, then scaling, then rotating, then scaling, then rotating, then scaling, then rotating.
Oh, and let's not forget being able to set parent/child relationships for any bone regardless of if they're connected or not...
-
YEESSS Raxx! is this!
Your video explains perfectly! ;D
would be an amazing form of using the Anim8or!
thanks for made this video(very professional)
-
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.
-
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.
-
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
-
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 :)
-
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.
-
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 :)
Wouldn't a bone just be treated as a matrix? A transform and rotation one at that. So I don't see how it couldn't work the way raxx mentioned. Unless me being sleep deprived is getting to the best of me again :P
-
The bone gives the input values to a matrix along with the object vertexes, however the bone itself is just a 3D co-ord with a fancy model overlay pointing to the next 3D co-ord.
I guess you couyld be right though?
Trev
-
I split this into a new topic.
There isn't really one "right" way to add a new bone. Do you make the UP vector point towards the viewer? Do you keep it in the same plain as the parent bone's UP vector? For most bones it doesn't really matter since they are part of a network of bones within one big object. All that matters is their relative rotation because that's what deforms the object.
As far as the implementation, don't worry. As I've said, it's all just math.
-
I'm not going to pretend I know anything about the math side of it. I'm sure you've got it covered ;)
I've been talking about rigging for the most part, but the ability to also animate the movement and scale of bones will make Anim8or a lot more powerful as an animation tool. Combined with constraints and ASL integration, it'll have a lot going for it. It's a hefty job though!
Still waiting for the topo knife tool >.>
-
What I mainly want is fast rigging and fast manipulation. It what anim8or truly lacks in the animation department.
-
Nice vid Raxx
I see now that neirao was more describing 'the way bones are drawn', which i have seen in other animation programs. Click, drag and rotate new bone in 1 movement.
Yes, definately an easier/faster way to create a rig.
As far as 'moving the bones apart, and the ability to also animate the movement and scale of bones
, is something i'm not really getting my head around so easily.
But, you guys know what you're talking about, so i'll just keep following this thread and comment as things become clearer. (http://s6.postimg.org/p4cqdev8d/grysmile.gif)
.....great to see discussions beginning re anim8or rigging and animation.....
Exciting stuff...(http://s8.postimg.org/j64xwcx9d/Big_Grin_Gry.gif)
-
+1
I like the info happening in this thread. It's really cool to me...
I particularly like the idea of animatable scale/length to bones, although I'm not a 'heavyweight' animator yet.
-
Give Build 1170 (http://www.anim8or.com/download/preview/files/animcl1170.zip) a try!
You can rotate and scale bones when adding them, plus you don't need to specifically select a bone before adding a child bone. For existing bones, I haven't finished allowing both scale and/or rotate simultaneously but they also are easier to select. Note: for the quicker selection you need Fast Select enabled.
-
Awesome! Works spectacular! I know a lot of people will be happy with this. I know I am ;)
However, things go weird after adding about 30 bones in a chain. If you add bones to preceding bones afterwards, it adds them to different bones than the ones you want, and doesn't follow the mouse.
Figure I'd bring it up here, but is there any way we can get X-Ray wireframe bones option for flat/shaded views? Basically, the bones are rendered always on top in their wireframe form, making them really easy to see and work with. Guess I'll mention alternate bone forms like cubic and lines would be spectacular improvements as well. Probably deserves to be in a different topic :P
-
The 30 levels of bone issue is a limit of the transformation depth supported by OpenGL (that's a minimum - it can be higher). I can work around it (and plan to, some day) but it requires quite a lot of changes to the code so I've rather work on features first.
I should add a restriction in Anim8or so that you can't do this. Strange things start happening when you build a skeleton deeper that 30 levels and start adding objects to some of the interior bones.
-
Ah, alright. So if I made a chain of 29 bones, and make another chain of bones off of bone 25, I can make only 4 more bones without it messing up. Similarly if I made another chain from bone 1, I can make 28 more on the new chain without it failing. It was easy reaching the 30 bone limit just clicking around to try out the new functionality...there probably won't be that many instances of needing more, but the more ambitious projects I can see this limit being hit easily (like a monster snake...the head'll be at the end of all the bones along its body, and require more bones for a detailed facial rig). The ability to rig and animate the movement/offset of bones could spell more efficiency in the rigging process and reduce the need for more.
-
Can't wait to try the new build, Steve!
-----
It's beautiful! Well done, Steve! I don't think I'll be needing more than 30 bones in one figure, but I did check out that "bug" just to see what happened.
-
It's not a limit of 30 bones in total - it's the depth that you can nest them. A snake with > 30 bones all in a row would hit the limit but an octopus with 10 bones on each arm wouldn't.
Anim8or has always had this limit so it's nothing new.
-
In new bone mode, once you release the mouse button, the endpoint of the new bone is frozen, and you have to switch tools to keep adjusting it. Is that the way it's meant to work?
-
woow Steve,
i see the link for download the Build 1170 only now.
i try very nice add new bones, is Amazing! :)
Thanks for share!
-
Steve,
forgot to say... 8)
in "Sequence Mode" the rotations of bones no work when i use the views: FRONT,LEFT,RIGHT,BACK
in anothers views work... is a bug?
PS: is amazing the new way for figure mode ;D do you remember my old idea (years ago) for made "FREE ALL BONES button"?
so i think the is more useful if all bones "start free" for all rotations sides (time saved for made the animations)
and when someone no want this, made static manually, lock this bone.. what you and guys think about??? ::)
-
so i think the is more useful if all bones "start free" for all rotations sides (time saved for made the animations)
and when someone no want this, made static manually, lock this bone.. what you and guys think about??? ::)
Actually, I thought about this as well when I tested the latest build. I feel the bones should definitely start with no joint limits. It'll make for a much more freeing experience.
-
In new bone mode, once you release the mouse button, the endpoint of the new bone is frozen, and you have to switch tools to keep adjusting it. Is that the way it's meant to work?
nemyax: In Add Bone mode each click-drag on a bone adds child bone to that bone. You can rotate and scale the bones as they are being added but once you release the mouse click-dragging again will add another bone. It wouldn't be possible to do this if Anim8or allowed you to scale or rotate the bone that you just added.
You can always use the 'R' hot-key to switch to Bone-Rotate to adjust the new bone's angle, and then the 'N' hot-key to switch back to Add Bone.
-
Steve
Do you think it could be possible to extend "new bone" mode to allow dragging of any bone's start/end point, not just the newest bone's end point? Because that's what we do when we build skeletons—we arrange joints (and let the program derive the bones). This behaviour could be enabled by holding down a modifier key.
-
so i think the is more useful if all bones "start free" for all rotations sides (time saved for made the animations)
and when someone no want this, made static manually, lock this bone.. what you and guys think about??? ::)
Actually, I thought about this as well when I tested the latest build. I feel the bones should definitely start with no joint limits. It'll make for a much more freeing experience.
yes Raxx,
i think that if in "menu>bone editor> bones paramentes" has the button "[reset]" that clear all paraments(must use a loop/matrix for select the bones) no is so hard to start free all bones! and too create a new button [free all] [lock all] etc. :)
-
Really nice. Really, really nice.
Over the moon right now, so pleased to see Anim8or reaching these new milestones.
I'm imagining this type of fast-select mode going on in the sequence editor ... lol....shivers down
me spine.....who could resist..
Massively awesome stuff steve. Wicked.
I'm all for the suggestions from neirao and raxx, regards default bone limits.
I got a bit carried away when first trying 1170, and whipped up a 12 legged blob with total 140
bones. Didnt take long with the new 'quick draw'.
But, giving each bone a value of movement did take quite some time...lol
A default of free all bones would be 1 answer, but then of course, all bones with no limits is not always a good thing.
I'm wondering, and hopeing not to confuse the issue, but could something like the image below be an option?
(http://s9.postimg.org/si7yesv2n/bonelimits.gif)
Edit. After a closer look, the command 'apply to all' and 'apply to selected', would probably need to ignore the Orientation (PYR) settings...
Another Edit: Not so well arranged in the picture i posted. If something like this could be implemented, the 2 new boxes/options would want to be placed directly under the x,y and z value boxes, to show more clearly that the only thing being applied to other bones is the rotation limits.
(or maybe it should say, ''apply limits to selected bones'', and 'apply limits to all bones"
-
nemyax: OK I've experimented a bit with using the Shift key in Add Bones mode so you can orient/scale bones by click-dragging on their tips. It works fairly well so I'll include it in the next drop.
I don't know how distinguish between the start of a bone and the tip of it's parent though.
johnar and others: Yes, this is a nice idea. I'll look into ways to add it.
-
cool,
time ago i create and posted this Tool for download: (http://img30.imageshack.us/img30/9707/freebonestool.jpg)
http://www.anim8or.com/smf/index.php?topic=2921.0
and send this: (http://img239.imageshack.us/img239/7439/ideas02500pxli8.jpg)
only for refresh(and ispiration) 8), my full ideas list here, somethigs Steve has implemented!
http://www.anim8or.com/smf/index.php?topic=1313.0
but is better inside Anim8or. :)
-
...
A default of free all bones would be 1 answer, but then of course, all bones with no limits is not always a good thing.
...
I've done my fair share of animating in other programs, and I've never, ever, used bone limits nor felt the need for it, even with character rigs. Heck, I'd even forgotten there was the option until I'd try a test rig in Anim8or and go through the grueling neverending ticking of boxes. It's true that most everything in real life has a range of motion, but when animating it's more about what looks right. Beyond anything, the simple freedom of being able to transform a bone exactly where I want it with simple clicking and dragging, I believe, should take priority. <--guess I went on a tangent there
Regarding your image, johnar, this is where a properties side panel would be spectacular, where you just select the bones and change the values and it applies to all of the selected ones. Absolute reliance on dialog boxes to change common properties are pretty disruptive of the workflow. I think I remember Steve was working on or planning to work on UI changes...I hope we can start getting away from the dialog boxes if he does.
-
Property Panels: I would very much like to replace dialogs with property panels. It will definitely happen. It's a massive amount of code to rewrite, maybe 3-6 months worth. I think it's more important to work on all the editing tool changes first, (and maybe even add sound and IK, too!) before I tackle property panels.
Joint Limits: I'll make the default "no limits" as many have suggested. I may add user-specified toggle for this, or full blown user settings for the default, or something like that, depending on everyone's comments after the change.
Note: joint limits can improve IK's realism as characters can tend to look like rag dolls with unrestricted joints.
-
Steve, you truly are a hero of the independent software developer realm!
If I can chime in, I think the one thing that would take sequence and scene mode a big step forward (for speed of workflow) would be an improved an "Fast Select"-styled bone rotation tool, like in my horrendously doctored image below:
-
Also steve have you considered making bones editable in scene mode (rotating and position)? Sorry if you already answered this question.
-
OK I've experimented a bit with using the Shift key in Add Bones mode so you can orient/scale bones by click-dragging on their tips. It works fairly well so I'll include it in the next drop.
Superb! Thank you.
I don't know how distinguish between the start of a bone and the tip of it's parent though.
This could be something to discuss after the dragging is committed.
-
Joint Limits: I'll make the default "no limits" as many have suggested. I may add user-specified toggle for this...
user-spec toggle would be good :)
Note: joint limits can improve IK's realism as characters can tend to look like rag dolls with unrestricted joints.
yep - the way i rig things, there tend to be some bones that should *never* move, and it would kinda ruin the IK party for me if there was no longer a way of flagging these bones as unavailable for the IK system to move, so i'm all in favour of keeping limits as an option, even if they're turned off by default!
-
Starting with no limits by default is certainly preferrable to starting with a rigid frame which you need to free up each bone individually before you can move anything.
That'll be excellent.
Nice one steve. (http://s8.postimg.org/j64xwcx9d/Big_Grin_Gry.gif)
-
joint limits can improve IK's realism as characters can tend to look like rag dolls with unrestricted joints
IK limits are usually independent from FK limits.
-
Joint Limits: I'll make the default "no limits" as many have suggested. I may add user-specified toggle for this, or full blown user settings for the default, or something like that, depending on everyone's comments after the change.
hoorah!
@Neirao
thanks for reposting the tool Neirao :),i thought there was a tool like this out there somewhere but couldn't find it.
i tried it today but not all the bones in the demo figure had there boxes ticked. :o though that could be something to do with the version of anim8or the demo .an8 defaulted to?which was 1163.I will experiment some more.
Success tried it again with 1170 worked perfectly :D.
-
neirao: nice illustrations, as usual. They do a great job of illustrating your ideas :)
cooldude234: Editing the base properties of bones in the Scene editor (length, relationship to parent bone, etc.) could cause some problems if there are multiple Elements built from that Figure. But I don't see any technical reason that it can't be done, in fact should be fairly easy. I'll add it so you can give it a try.
-
but not all the bones in the demo figure had there boxes ticked. :o
@thanks, yes some bones no unlock to free, is a bug (no is a professional tool),
i lost the original source of this tool for make the correction..
but in next months i will made others tools for we using together with Anim8or! :) i have many ideas!!
@Thanks Steve, you are amazing! how someone say days ago... for a alone programmer you are a Hero!! ;D
step by step Anim8or is turning a software incredible, light, little and easy to use, even more!
-
I always default the bones -179 to 179 to make sure there aren't any weird pathing issues, i.e. going the wrong way round to get there. I'd personally prefer that as the default, but that's just me. I'm not sure if that's even a problem anymore, though, as I never set "no limits".
-
I always default the bones -179 to 179 to make sure there aren't any weird pathing issues, i.e. going the wrong way round to get there. I'd personally prefer that as the default, but that's just me.
light bulb brilliance....i feel stupid in your presence.
-
That's a really great idea, Water... When they total 360 it seems inevitable that things start spinning around if you're not careful!
-
Steve. and all,
I notice you can still fast drag-out and rotate bones even when the fast button is off?.
I wondering, and would anyone agree, that when the fast button is off, it should revert back to
the old method??
Maybe not important usually, but when drawing out bones freehand, as in the new fast-select mode, its hard to get a perfectly straight line of bones. In some cases if this was an issue, you would think you could just turn fastmode off, draw your straight line of bones, then fastmode on again.?
Might be nothing, maybe the new ability to draw and rotate bones at same time should be possible when fast is off. Personally, i think maybe not. Anyone else?
And just a small thing re bone limits. Another use for being able to set limits, and a plug for being able to set limits, and then apply those limits to all or selected bones.
Case in point:
This strange thing is what it is.
(http://s28.postimg.org/66kmtp2el/snake01.gif)
I like the angles, which are all 30degrees. So, knowing this angle is nice, i can limit the bones to 30 degrees each way. Then, when animating, you can just drag/rotate the bone till it stops, and you know you've got all exact 30 degree angles.
(http://s16.postimg.org/n3jhvqjyd/snakeaxiscut.jpg)
One more small observation, and purely asthetic really. In the axis pic above, only the Z axis is enabled, yet x and y have visible green and blue arrows. Would it be a good idea to not have anything showing for those axis if they are not useable. ? Would be interested to hear if anyone has an opinion about that.
I mean, its nothing really.....(http://s6.postimg.org/4y98eizkt/grywink.gif)
-
To tag on to johnar's statement, I feel like the majority of applications have an option where you hold shift while rotating or moving and it'll snap- to a grid, to common angles (90, 45), to corresponding coordinates (x or y), etc
-
davdud101. That type of thing would do it. (http://s6.postimg.org/p4cqdev8d/grysmile.gif)
-
cooldude234: Editing the base properties of bones in the Scene editor (length, relationship to parent bone, etc.) could cause some problems if there are multiple Elements built from that Figure. But I don't see any technical reason that it can't be done, in fact should be fairly easy. I'll add it so you can give it a try.
Well I was referring to more the animation portion of it. Making the movement and rotation of bones animate(-able?) in the scene mode. So you could add key frames and reposition the bones for the next movement. This way you could tell how far you had positioned the bone in relevance to other things in the same scene (like another character).
For instance if you had animated someone high-fiveing another person you would want to know how far to position the arms so that they do not intersect nor miss.
Thanks
-
I thought that feature has been in for years now. You can animate bones in the scene editor.
-
Joint angles are animatable in the scene editor. Click on the angle icon to enable it. I will be working on this area when I get to the Scene editor updates.
-
Well you still cant just rotate the bones. You have to type numbers in arbitrarily guessing the distances and angles.
[/youtube]
This video may help illustrate what I mean. As you can see the person is able to rotate and move the bones using the normal tools associated with that function but in the actual scene editor (instead of having to open up a properties dialogue and punching in numbers (in can be useful SOMETIMES)). There are other tools in Carrara and blender (and etc.) to help with such things like collision detection (in carrara I know you can switch that on and then when you move a bone it wont budge any further if it's rig goes through another solid object).
-
Well you still cant just rotate the bones. You have to type numbers in arbitrarily guessing the distances and angles.
?
You can rotate bones in scene mode. LeftMB to rotate on X axis, MMB for Z and RMB for Y.
Just click on the bone and drag... :P
-
Well you still cant just rotate the bones. You have to type numbers in arbitrarily guessing the distances and angles.
?
You can rotate bones in scene mode. LeftMB to rotate on X axis, MMB for Z and RMB for Y.
Just click on the bone and drag... :P
Does this actually work for you?
-
Does this actually work for you?
Absolutely. Although sequence mode is easier for animating at the moment, because you have things like key all bones, and key selected bones. But animating in Scene mode is defineately a happening thing. If you've had trouble rotating bones in scene mode, try adjusting/changing the view.
If you've allowed bone movement in the fig editor, you'll get it moving in scene. (http://s6.postimg.org/4y98eizkt/grywink.gif)
-
Well you still cant just rotate the bones. You have to type numbers in arbitrarily guessing the distances and angles.
?
You can rotate bones in scene mode. LeftMB to rotate on X axis, MMB for Z and RMB for Y.
Just click on the bone and drag... :P
WHAT!?!?!?!? This is a thing???? Wait, I need to fact check, because I've always been in the dark about this always taking the long, grueling route of enabling bones and then typing in (and guessing) the angles.
-
Wow... I am truly a fool... Johnar, I wish someone had mentioned the LMB-MMB-RMB thing about 10 years ago, because that would have sped up my animation process by so much :'( I guess I have NOW to begin to make use of it!
-
I know that Anim8or could use better documentation, but there is a mention of the different mouse buttons in the Sequence Editor chapter of the manual:
Making a Key Pose (http://www.anim8or.com/learn/manual/6_sequence_editor.html#making_a_key_pose)
I'll make this more obvious.
-
Wow. I guess (like I always do) once I acquired the information I needed from the manual/tutorials, I continued with a sort of "learn as I go" approach where I wouldn't / couldn't have picked that up. Pride truly comes before fall! I'm gonna consult the manual more often.
[EDIT]: in fact, this is the thing in Anim8or that for me will make it 40x as powerful and increase my animation speed by at least 10 times!! cooldude, this is what you're looking for!
-
Does this actually work for you?
Absolutely. Although sequence mode is easier for animating at the moment, because you have things like key all bones, and key selected bones. But animating in Scene mode is defineately a happening thing. If you've had trouble rotating bones in scene mode, try adjusting/changing the view.
If you've allowed bone movement in the fig editor, you'll get it moving in scene. (http://s6.postimg.org/4y98eizkt/grywink.gif)
WOW it actually sort of works. It just has a really crappy hit detection. I have to be on an 1 pixel wide line practically to drag the bone but heck it works!
all these years and I didn't think it was even implemented yet... :\
-
Same here!! I had no knowledge of it and that was holding me back from actually being comfortable animating.
-
Same here!! I had no knowledge of it and that was holding me back from actually being comfortable animating.
I had knowledge of the button but I thought it was useless never could get any bones to move. I'm mean its not like I can get them to position easily right now, but hey it at least works.
EDIT: found out the problem, when you are locked on (or very very close to) facing a certain axis (x y or z) and you try to move the bone in a certain way it doesn't want to budge.
Not 100% sure the cause but I think it could be because of the angles related to the way the camera is facing and the direction of the bone and how the cursor is being calculated from 2D to 3D (2d movement in pixel sizes converted to 3D positions/angles are usually always relative to the cameras angle) if that makes any sense.
-
yes, theres always been particular angles of view where bones don't want to move, but 99% of the time there is no problem. Make use of thumb on alt button for quick arc-rotate view, and move view when bones seem stuck.
2 views can be real handy for this. 1 view is camera view, so you can see what it looks like through camera. Then, you can use another view for animating bones, so you can rotate around that view as much as you like, while still having the camera view to check the final look of things.
Glad you guys are now going to do a bit more animating. (http://s6.postimg.org/4y98eizkt/grywink.gif)
davdud You're no fool mate. Gauranteed i do a lot of things the wrong way, the long way, or not at all coz i never knew you could. None of us know everything, and when you pick up something new, its just a good thing ....... (http://s8.postimg.org/j64xwcx9/Big_Grin_Gry.gif)
-
Thanks so much for pointing it out, John! I've been in the dark about it for nearly a decade :o
Well I feel like cooldude and I sort of hijacked the topic! Back to discussing Steve's new implementation...
-
cooldude234: Yes, you're right. Anim8or uses the relative screen angle to position bones when you are rotating them. If you are rotating a bone on an axis parallel to the screen then it will rotate directly in to/out of the screen. It's not possible to tell what angle you want from the position of the mouse, so the bone isn't rotated.
I've experimented with other ways to do rotation that might work better. I'll revisit this when I get to updating the Sequence and Scene editors.
-
I posted a new build 1171 (http://www.anim8or.com/download/preview/files/animcl1171.zip) that allows you to rotate/change-length-of existing bones in Add Bone mode if you hold the Shift key down. I also added a combination rotate/change-length mode to the toolbar (and plan to remove the old rotate and change-length modes is everyone thinks that's a good idea). Click-drag the tip to to change length and rotate, elsewhere on the bone to only rotate.
I also added Default Joint Settings so you can have any values that you want for the default when adding bones.
-
Hey Steve, awesome changes. Here's my thoughts:
- Disabling "Default Bone Angles" keeps using user-specified default limits, rather than no limits which is what I expected.
- I think it's safe to remove the rotate and scale bone tools
- Rotating/scaling using the edit or new bone tools snaps the bone to the user's plane of view. I think it should keep it relative to the parent bone's orientation when creating a new bone, and keep it relative to its original orientation when editing the bone. It'll be pretty annoying otherwise when trying to tweak bones that have children (you have to go down the entire chain of bones changing it back to the way it was, since it becomes a domino effect), or when making minor adjustments by itself.
- Having the left/right/middle<->single/add/subtract selection mouse functionality doesn't really make sense with the add/edit bone tools. There's not a whole lot of need for them (use the select tool for multi-bone selection). Instead, something like this might work better (combined with the X/Y/Z axis buttons working on bones):
- Combine the edit bones tool with the add bones tool, and just call it the "Bone Tool" or something
- LMB: Edits bones like it currently does
- RMB: Moves bones
- CTRL: Child independent manipulation is triggered. It'll rotate or move bones without affecting the children. Until you get moving/offset implemented, this could be restricted to just rotating a bone along its roll/Y-axis without affecting the children
- Holding shift activates the add bone functionality, and creates it like the current add bone tool does
- Widgets sure would be nice right about now ;)
-
1171 maybe we just want to rotate without messsing up the scale or scale without messing up the rotate accidentally....just a thought not everyone is an expert.its not as if the menu is overcrowded.
-
cooldude234: Yes, you're right. Anim8or uses the relative screen angle to position bones when you are rotating them. If you are rotating a bone on an axis parallel to the screen then it will rotate directly in to/out of the screen. It's not possible to tell what angle you want from the position of the mouse, so the bone isn't rotated.
I've experimented with other ways to do rotation that might work better. I'll revisit this when I get to updating the Sequence and Scene editors.
From what I tried when the screen is parallel it doesn't move at all or on even on some slightly non parallel angles. I think it also might be because of the z rotation of the bone having an effect on this.
-
Steve
The new tip manipulation tool (shift-drag in add bone mode and the new icon) would be complete if it only affected the bones that meet at the tip you're dragging. Currently it affects everything down the road from the tip.
-
Just checked out the new build (1171) and I think its amazing (this specific functions anyway).
I do have a suggestion though, have a function for positioning bones that do not affect its child bones positions. IE moving the parent bone would change the length and angle of the of it's connected bones (even it's own parent bone if it has one) but all the other bones down the chain wouldn't change at all.
(refer to picture below)
EDIT: nemyax beat me to it because Firefox is bugging out
EDIT the second: I don't for this to replace what the edit bone does already but rather having another function associated with it (or a whole new button altogether) possibly make use of the already existent move button which is currently useless for bones.
-
Come to think of it, the new edit mode should probably let you select a single tip or multiple tips and let you transform them exactly like polygon points, as if they weren't part of any hierarchy.
-
1171 maybe we just want to rotate without messsing up the scale or scale without messing up the rotate accidentally....just a thought not everyone is an expert.its not as if the menu is overcrowded.
seconded; i'm sure i'd still find uses for the separate tools sometimes
-
1171 maybe we just want to rotate without messsing up the scale or scale without messing up the rotate accidentally....just a thought not everyone is an expert.its not as if the menu is overcrowded.
I'm pretty sure its either a glitch or Steve missed something.
He says
Click-drag the tip to to change length and rotate, elsewhere on the bone to only rotate.
But if you click anywhere else it just does the same thing as clicking on the end (which scales and rotates).
-
But if you click anywhere else it just does the same thing as clicking on the end (which scales and rotates).
cooldude234: That comment applies to the "Add Bones" tool when you press the <Shift> key to edit instead of adding, and to the new "Edit Bone" tool that Rotates and Scales.
-
Raxx:
Disabling "Default Bone Angles" keeps using user-specified default limits, rather than no limits which is what I expected.
The title "Default Bone Angles" is a but cryptic. What this does is set all joint angles to their default values (enabled), or show them at the normal 0 degrees (disabled). This hasn't changed from previous builds.
The idea is that you can skin a character in an unnatural pose (like with arms straight to the sides and legs apart) but set the defaults to a more natural pose. This setting allows you to see what skinning does in the default pose.
I don't know how useful this option is - maybe it should be removed. In any event I'll change the name to something like "Show Default Pose".
Rotating/scaling using the edit or new bone tools snaps the bone to the user's plane of view. I think it should keep it relative to the parent bone's orientation when creating a new bone, and keep it relative to its original orientation when editing the bone. It'll be pretty annoying otherwise when trying to tweak bones that have children (you have to go down the entire chain of bones changing it back to the way it was, since it becomes a domino effect), or when making minor adjustments by itself.
I'm not clear on what the "parent bone's orientation" means. Do you mean that the new bone rotates in the parent's X-Y plane (i.e. the Z-axis remains parallel to that of the parent)? I agree that it's a bit whacky the way it is now.
Widgets sure would be nice right about now
Agreed. That would fix a lot of issues.
-
But if you click anywhere else it just does the same thing as clicking on the end (which scales and rotates).
cooldude234: That comment applies to the "Add Bones" tool when you press the <Shift> key to edit instead of adding, and to the new "Edit Bone" tool that Rotates and Scales.
OK I see the problem now. With Fast Select disabled it always allows to length to be changed. I'll fix it for the next build - it's just one little negation missing in the code :)
-
Raxx: Disabling "Default Bone Angles" keeps using user-specified default limits, rather than no limits which is what I expected.
The title "Default Bone Angles" is a but cryptic. What this does is set all joint angles to their default values (enabled), or show them at the normal 0 degrees (disabled). This hasn't changed from previous builds.
The idea is that you can skin a character in an unnatural pose (like with arms straight to the sides and legs apart) but set the defaults to a more natural pose. This setting allows you to see what skinning does in the default pose.
I don't know how useful this option is - maybe it should be removed. In any event I'll change the name to something like "Show Default Pose".
Whoops! I thought you added it as part of the new feature. That explains it :P I never used the default joint limits feature for bones because numerically entering it is a bit tedious, and you can copy and paste keyframes and import/export sequences. But if there was an easy way to set it (like a "Pose Mode" to temporarily drag bones along their limits as if it was in the sequence editor and set the pose), I'd probably use it every time. By the way, when "no limits" are enabled for a bone, shouldn't there still be a default angle the user can still set? It's disabled currently.
Also, a way to temporarily move around bones while seeing what the skinning process does to it, without having to flip back and forth between editors, is a timesaver. So skinning while in "Pose Mode" would be a spectacular way to do this.
Rotating/scaling using the edit or new bone tools snaps the bone to the user's plane of view. I think it should keep it relative to the parent bone's orientation when creating a new bone, and keep it relative to its original orientation when editing the bone. It'll be pretty annoying otherwise when trying to tweak bones that have children (you have to go down the entire chain of bones changing it back to the way it was, since it becomes a domino effect), or when making minor adjustments by itself.
I'm not clear on what the "parent bone's orientation" means. Do you mean that the new bone rotates in the parent's X-Y plane (i.e. the Z-axis remains parallel to that of the parent)? I agree that it's a bit whacky the way it is now.
Yeah, something like locking the Z-axis to its parent will probably be a lot better.
-
Steve,
very usefull the feature "new join limits" :)
i think that you can insert at this function the option about "diameter" of bones
for memorize the "Dia" option for news add bones!!
What you think about this? ::)
-
raxx you're right about the bones' orientation being broken. I was just looking at the bones themselves.. Then I turned on the axis and could see the bones rotate when you first click on them. .
-
The idea is that you can skin a character in an unnatural pose (like with arms straight to the sides and legs apart) but set the defaults to a more natural pose. This setting allows you to see what skinning does in the default pose.
EDIT: Sorry. Misunderstood that the first time. Got it now... (http://s6.postimg.org/zd57j8ja5/gryrolleyes.gif) .......................
-
So johnar, you're basically saying that the terminology should be a bit more understandable is all?
Quite a pamphlet for that ^^
(I keed, I keed!! XD)
-
(http://s13.postimg.org/668ay1knn/blush1gry.gif) Took me a while to catch up. I am following.... (http://s6.postimg.org/p4cqdev8d/grysmile.gif)
-
raxx: I'm still having trouble finding a good way to add and rotate bones. The video you posted on Mar 2 only shows a 2D skeleton. All the bones and their coordinate systems stay aligned to the screen (as far as I can tell).
I have a build that does the following:
Add new bone: New bones initially have the same orientation (coordinate system) and direction as the parent.
Rotate: Rotation (Add Bones and the new Rotate+Length tool) rotate according to the view. It doesn't realign the Z axis to point out of the screen like build 1170. If a bone points out of the screen at a 45 degree angle it will keep that same relative angle to the screen.
This initially seemed to work well. However it has some weird side effects. If you start with a view where the parent bone points out of the screen at a small angle, and keep adding child bones with a rotation in the same direction, it builds a spiral not a flat skeleton.
What should I be doing?
-
Hm, I see. It may be more advantageous to keep the Add Bone tool the way you had it, based on the screen coordinate system, and the rotate/scale tool based on itself.
While testing and comparing in other programs like Blender, I can see that not having a rotation widget is really hurting. Currently, Anim8or is entirely reliant on the local coordinate system of the bone when animating. You can only rotate along the bone's axis using the three mouse buttons, and not relative to the screen or global coordinate system. Having a widget removes the need for three mouse button movement, enables screen X/Y based rotation, and frees up the animating experience a lot.
I know you're working on the figure editor at the moment, but I think this is a fundamental issue that extends into the figure editor as well. Because due to this restricted style of animation, the user has to mind the orientation of each bone while rigging, with absolute care and precision. In the other 3D programs I've used, the orientation of the bone doesn't have as much importance when rigging because when animating you can rotate either globally, locally, or along the screen XY coordinates. It's still good practice to have at least one axis aligned close to its main plane of movement, especially in some cases when working with constraints, but that's what the child-independent transformation feature I suggested in the earlier post is for.
When doing animation, guess which coordinate system I never use? Local. I animate almost entirely based on the screen coordinates, and then otherwise mostly global since it's more intuitive to animate relative to the entire world and the surrounding elements. All this is one of the reasons why I don't bother with joint limits.
^^^^And all that is justification to keep the Add new bone tool as you originally had it, being based off the screen.
You know, the graphic that shows the bone's joint limits (Bone Axis <X>), can be converted into a rotation widget. Draw it on top of everything, add detection on if/which axis was clicked and dragged on, and add an outer circle for screen coordinate rotation. Then make it change and transform based on which coordinate system the user has selected, and you're set. The pivot graphic is almost a translation widget as well.
Even if you don't implement widgets now, I think you're going to be forced to move away from the LMB/MMB/RMB axis transformation deal when it comes time to work on the sequence editor. It'll be a situation where you have to change it to screen coordinate rotation using the LMB, and then use the X/Y/Z axis buttons on the left toolbar to restrict to certain axis if necessary. That's the only way to drastically improve the animation experience without widgets (it's sort of a half-baked alternative), though I'd certainly recommend just getting the widgets done and over with now to save time in the long run...
-
Maybe I should just start working in widgets. I had planned on making a quick pass through all the editors to whip things into better shape for an "official" release, then another pass to do more ambitions things like property sheets and widgets. But working widgets now could save a lot of work in the long run.
On a related note, I'll be gone for two months again this summer and another month and a half in the fall (Italy again :) ) so I won't be writing any code during these times. But I'll certainly be back at it when I return.
-
I posted a new build 1172 (http://www.anim8or.com/download/preview/files/animcl1172.zip) that makes these changes to the following tools:
Add Bones: Bones are always added parallel to the screen with Z-axis pointing out.
Add Bones and Rotate+Scale Bones: Fixes annoying bug that forced bones to align their Z-axis to the screen when you rotated them.
Rotate Bones: New mouse behavior:
Screen Space Rotation:
LMB - Rotate around screen Z-axis, bone follows mouse.[1]
MMB - Rotate around screen X-axis, move mouse up/down to rotate.
RMB - Rotate around screen Y-axis, move mouse left/right to rotate.
Bone Axis Rotation:
With Shift key pressed:[2]
LMB - Rotate around bone's X axis, move mouse left/right to rotate.
MMB - Rotate around bone's Y axis, move mouse left/right to rotate.
RMB - Rotate around bone's Z axis, move mouse left/right to rotate.
[1] The reason that the LMB rotates around the Z-axis of the screen is because that's the more common way that you rotate things when you think of a rotation in screen space.
[2] This is how widgets would work (not with the L/M/RMB but with along one bone axis at a time) but widgets aren't written yet.
-
Very cool this new version! :)
STEVE,
can you insert "diameter" of bones
for memorize the "Dia" option in "joint angles dialog"? :)
in add selecteds/all bones buttons, this is very usefull too..
PS: need change the TITLE VERSION, in topic.. "Current Development Release - Build 1171, April 15, 2015"
-
so now in the latest build you can only add bones that point to the right side of the screen on the x axis?
Is this right or am I missing something here?
I really preferred it the other way (besides the fast select mode) where I could add a bone and it would extend it in the direction of the bone.
-
I posted a new build 1172 (http://www.anim8or.com/download/preview/files/animcl1172.zip) that makes these changes to the following tools:
Add Bones: Bones are always added parallel to the screen with Z-axis pointing out.
Add Bones and Rotate+Scale Bones: Fixes annoying bug that forced bones to align their Z-axis to the screen when you rotated them.
Rotate Bones: New mouse behavior:
Screen Space Rotation:
LMB - Rotate around screen Z-axis, bone follows mouse.[1]
MMB - Rotate around screen X-axis, move mouse up/down to rotate.
RMB - Rotate around screen Y-axis, move mouse left/right to rotate.
Bone Axis Rotation:
With Shift key pressed:[2]
LMB - Rotate around bone's X axis, move mouse left/right to rotate.
MMB - Rotate around bone's Y axis, move mouse left/right to rotate.
RMB - Rotate around bone's Z axis, move mouse left/right to rotate.
[1] The reason that the LMB rotates around the Z-axis of the screen is because that's the more common way that you rotate things when you think of a rotation in screen space.
[2] This is how widgets would work (not with the L/M/RMB but with along one bone axis at a time) but widgets aren't written yet.
Much better Steve! Regarding [1], that seems natural. It's the same behavior that other programs seem to do. As for [2], not as user friendly as widgets obviously so it'll be nice when you apply this to that.
so now in the latest build you can only add bones that point to the right side of the screen on the x axis?
Is this right or am I missing something here?
I really preferred it the other way (besides the fast select mode) where I could add a bone and it would extend it in the direction of the bone.
I might be wrong in this assumption, but perhaps Steve hasn't adjusted non-fast-select yet for these new features. I think both modes would/should have the same behavior, the only difference is that it doesn't automatically select-then-edit in non-fast-select mode.
-
neirao: Topic title changed and I'll add "Diameter" in the next build.
cooldude234: Darn, missed that. Bones should follow the parent's orientation when you add them with Fast Select disabled. I guess I missed testing that. I'll fix it.
-
Hey Steve, something that's been urking me for a while. Any chance we can get a small plus sign in the bottom right corner of the Add Bone button graphic? I keep hesitating over the darned thing because it looks like the other buttons.
-
Raxx: sure, all of the bone editing icons need updating after the new changes, which it a bit tedious to do. But adding a '+' is easy.
-
Edit Bone is broken in 1175.
-
Edit Bone is broken in 1175.
Working ok with me .
Build 1175 Win7 OpenGL4.1
-
nemyax: How is it broken?
-
Bones don't stretch to follow the mouse any more. They only rotate.
-
Bones don't stretch to follow the mouse any more. They only rotate.
Already reported in this post (http://www.anim8or.com/smf/index.php/topic,5153.msg38422.html#msg38422)