Anim8or Community
General Category => Ongoing Anim8or Development => Topic started by: Steve on April 18, 2014, 07:00:35 pm
-
Fast Selection is enabled by default in the Object editor as of build 1086. This allows you to click on an unselected shape and immediately edit it, without changing to Select mode and back or using Control-Shift. It works for the Select, Move, Rotate, Scale and Non-Uniform Scale tools in the base Object editor. It is enabled by default but you can change back to the old behavior in the GUI dialog.
I've had portions of this ready for a while but couldn't decide on the details. I'm reluctant to change the behavior of something so fundamental to work flow but, as many of you have suggested, there are better ways to handle selection. I'm interested in your feedback on what you like and don't like about how I've implemented it and whether you want this enabled by default. So don't be shy about replying!
-
I like it, though I can see how there might be issues when dealing with shapes within/around other shapes (accidentally clicking and dragging on unintended shapes). I think it'd be nice if it got switched to using helper widgets for move/scale/rotate, with them being toggle-able buttons. This way you only need the select tool and the three transformation buttons (say, right below the xyz buttons).
A few problems I uncovered:
- You can no longer deselect shapes by clicking in the empty workspace.
- While in point edit mode, if you have the move tool active and click/drag over a shape, it selects the entire shape.
-
Thanks I missed the deselect problem.
* Uniformity in the interface is important. The more one tool works like another the easier Anim8or is to learn and use. What about using the original Select tool semantics for Move, Rotate, etc.? I'd have to remove the ability to move in the Z direction (i.e. into/out of the screen) with the right mouse button because that button would add shapes to the selection.
One advantage of the original design was that you didn't risk accidentally deselecting anything when moving or rotating something.
* Widgets are both a lot of code and a big change in the workflow. I'm thinking about doing something in this area but want to take things one step at a time.
though I can see how there might be issues when dealing with shapes within/around other shapes (accidentally clicking and dragging on unintended shapes).
But that's how the select tool works now. If I change everything to use Widgets then that's how thew would behave, or do yo have something else in mind?
-
Uniformity in the interface is important. The more one tool works like another the easier Anim8or is to learn and use. What about using the original Select tool semantics for Move, Rotate, etc.? I'd have to remove the ability to move in the Z direction (i.e. into/out of the screen) with the right mouse button because that button would add shapes to the selection.
I was thinking about that. The fast selection disrupts that uniformity. The original select tool semantics applied to fast selection would feel a bit odd to me, personally. I can't imagine right-click and dragging to both add a new object to the selection and move it with the selection at the same time. And middle-click dragging to remove and move? Seems like it'd feel weird.
Fast selection (I'm going to call it tweaking) is nice, but I'm not convinced it's the best answer as the main force behind editing shapes. It eliminates the back-and-forth switching between tools, but seems to sacrifice too much of the flow for general editing. Also, it promotes more carelessness. I don't know about you, but I think transforming whole shapes in the object editor, or whole objects/figures/sequences in the scene editor, should be done with deliberate care first. Then adjustments can follow.
As you know Steve, I'm all for a tweak feature, but I think it should be treated as a separate tool for making adjustments. What if the original select/edit system was in place, and there was a nice big tweak/fast selection mode toggle button (like in the image below -- or in the top toolbar somewhere) that enables tweaking (can be used for all elements across all the editors)? This tool would be used extensively in point edit mode (I'm drooling just thinking about it) and when editing figures/sequences, and likely when fine-tuning animations in the scene editor, but the original select-then-transform method is a solid foundation that (in my opinion) should be kept for the sake of precision editing.
Attachment 1
though I can see how there might be issues when dealing with shapes within/around other shapes (accidentally clicking and dragging on unintended shapes).
But that's how the select tool works now. If I change everything to use Widgets then that's how thew would behave, or do yo have something else in mind?
Well, from my experience, you select the element first, then the widget appears on the element, then you click-drag on whatever part of the widget to transform it along the axis. Click-dragging outside of the widget leads to transformation on all axis, etc etc. Some editors allow you to just click on another element to select it and activate the widget on that element (like blender), other editors require you to change between a select tool and the individual transform tools (XSI). Multiple selections would have a single widget at the center point between those elements. There are benefits:
- It's universal across nearly all 3D editors. Users coming from other programs will know exactly how to use it, and new users, well, they wouldn't know the difference :P but if they need to use another 3D editor, it'll be nothing new to them
- The widget that's being displayed is a solid reminder of what transformation mode you're in.
- Right and Middle mouse buttons could potentially be freed up, assuming selection methods change (technically, only one button needs to be used to both add or subtract from the selection. If you click on an already selected element, then it deselects it. Otherwise selects it. Might be a bit drastic of a workflow change though)
- It helps ground the user. There's a lot of different types of elements that have to be transformed. But there's one singular widget used for all of them. A lot of times, it's easier to understand the effect of your actions by looking at where the widget is moving or rotating, rather than the element itself.
I recognize that widgets would be a lot of work, and I'm betting a lot of users would rather have something else first. I mentioned widgets mostly as an alternative to having fast selection as the primary method of editing. If fast selection/tweaking were just supplementary to the original system, I think the need for widgets would become more supplementary as well.
Anyway, that's all my 2 cents on the subject. Many thanks for all the hard work, Steve 8)
-
How do you move multiple objects the same amount? Can you do this with widgets? Currently Anim8or moves all selected objects in unison - is this capability important enough to preserve?
-
That is the same behavior with widgets. Only one widget would be shown for all of the selected objects, located in the centerpoint. All selected objects would be moved in unison when clicking and dragging on that widget.
Rotation and scaling may or may not be different. Anim8or rotates/scales multiple objects around their individual pivots. Blender rotates/scales around the centerpoint between all the objects by default (as if grouped), but has various pivot options that can do like what Anim8or does. XSI does the same as Anim8or by default, but has a "Center of Geometry" option that allows it to transform around the centerpoint like by default in Blender. I'm sure it varies between programs. I think there's a feature request for centerpoint manipulation, so that's something to consider as a toggleable option.
-
Thanks for the explanation - I think that would work quite well. I need to watch at a few more you-tube tutorials on these apps. If you have any suggestions for good tutorials let me know.
-
Currently Anim8or moves all selected objects in unison - is this capability important enough to preserve?
yes, it's definitely important enough! i use this all the time.
You can no longer deselect shapes by clicking in the empty workspace.
i think this might actually make sense when using tools other than Select, but i find it gets quite frustrating when using the Select tool itself
One advantage of the original design was that you didn't risk accidentally deselecting anything when moving or rotating something.
in my brief experimentation with Fast Select, i have found this to be an issue, particularly if you're trying to work on an shape which is partially or fully hidden behind/inside another shape; you end up changing selection to the foreground/surrounding shape instead of performing the intended modification. the problem can be avoided by clicking in empty space, but only if there happens to be any empty space in the workspace at the time, which won't necessarily always be the case.
Uniformity in the interface is important. The more one tool works like another the easier Anim8or is to learn and use. What about using the original Select tool semantics for Move, Rotate, etc.? I'd have to remove the ability to move in the Z direction (i.e. into/out of the screen) with the right mouse button because that button would add shapes to the selection.
I was thinking about that. The fast selection disrupts that uniformity. The original select tool semantics applied to fast selection would feel a bit odd to me, personally. I can't imagine right-click and dragging to both add a new object to the selection and move it with the selection at the same time. And middle-click dragging to remove and move? Seems like it'd feel weird.
hear hear! i'd much rather keep the z-move functionality.
now, just thinking out loud here - this might be a bit out of the blue, but thought i'd put it out there anyway: i can't remember off the top of my head whether ctrl+click or shift+click in the workspace does anything at the moment (correct me if i'm forgetting something here?), so i'm wondering whether, rather than having a Quick Select as such, it might be a good idea to use ctrl, shift or alt as a quick toggle back to the Select tool? ???
-
now, just thinking out loud here - this might be a bit out of the blue, but thought i'd put it out there anyway: i can't remember off the top of my head whether ctrl+click or shift+click in the workspace does anything at the moment (correct me if i'm forgetting something here?), so i'm wondering whether, rather than having a Quick Select as such, it might be a good idea to use ctrl, shift or alt as a quick toggle back to the Select tool?
My issue with falling back to modifier keys all the time to trigger alternate behavior is that it gets harder and harder to remember what the modifier keys do, if they do anything at all, and it's not very beginner friendly (think about Blender). With different alternate behaviors per tool, it kind of gets messy. Shift-clicking with snap-to-grid turned on does relative grid snapping. Ctrl-clicking with single select does paint-selecting. Ctrl+Shift adds selections when using other tools (falls back to the original tool when released).
Also, if widgets get implemented, then having modifier keys to toggle between fast/normal selection might make things even messier. It'd basically be three transformation systems in one. If widgets get implemented, it may be best to have fast selection/tweaking the primary system, and remove the original selection system altogether. This way the workflow would be like this:
- Click on move/rotate/scale.
- Click and drag elements around for instant manipulation
- Click on move/rotate/scale.
- Click on an object to select it.
- Click-drag on the widget to carefully manipulate it along the chosen axis
With the above system using a combination of only fast selection and widgets, there's no longer a need for the select tool since move/rotate/scale can perform that function, and you can perform careful precise actions with the widgets or make fast adjustments with fast selection. Ctrl can still be used to paint selections, Shift can be changed to rectangle select. Using the Ctrl paint selection tool, inverse selection (subtracting selected shapes and adding unselected shapes to the current selection) can be an inherent feature, thus replacing the middle/right click semantics of the original selection system. Relative snapping with grid snap can be changed to Ctrl+Shift, or instead toggled by right-clicking the button (change it to a different color?--can be the start of alternate function capability by right-clicking buttons). With this, you'd be simplifying the left user interface by removing the select, rectangle select, and non-uniform scale buttons, freeing up the middle and right mouse buttons for future features, and modifier keys share the same type of behavior, promoting that uniformity Steve speaks of ;)
Steve, I don't really have a library of tutorials to show, but I can probably put together a quick video showing the widget actions in the programs I have installed.
-
Raxx, no need to make any tutorials. I've found several that show what I was looking for.
-
(think about Blender)
ugh... do i really have to? :o
still, Raxx, fair point about new-user-friendliness. i'd forgotten about the shift-move-relative-grid thingy (i know i was the one pushing for it, i just have a bad memory ::) ), and i wasn't aware of the other existing toggles.
if we started going down the Widgets route (which i still haven't entirely got my head around the details of, but it does sound promising):
- could i request that the Widgets not be too small and fiddly? i appreciate the current flexibility of being able to click anywhere in the viewport to make the same movement/scaling/whatever.
- considering that it'd be a pretty radical workflow redesign, and considering the program's already on v0.98.something, do you think Widgets might be the trigger to update the version number to the long-awaited 1.0? 8)
-
To be called v1.0 I think Anim8or needs a few more key features - but I'm not going to list them because I might not be able to make them work well enough. But it'd be nice to finally have something called 1.0 :)
-
...but I'm not going to list them...
oh, great - way to leave us all on tenterhooks! <evil genius voice>"There is a secret list. But I'm not going to let you read it... because it's a secret!"</evil genius> :P
i'm going to take an educated guess that one of them might be IK, but i'll understand if you don't want to tell me whether or not i'm right ;D
so, um... worst case scenario involves us getting to the year 2033 and finding Anim8or on version 0.99993e or thereabouts?
on a more serious note, a couple of other thoughts following on from Raxx's Widgets idea:
- if there are going to be certain widgets that operate on certain dimensions, they should be colour-coded - red for widgets that operate along/around the X-axis, green for Y and blue for Z, per the axis markers currently displayed in wireframe mode
- if the right and middle buttons were freed up as R suggests, they could be redeployed to move and rotate the viewport - combined with scroll-to-zoom, wouldn't this would render the Viewpoint sub-modes more or less redundant?
-
After using Anim8or for a while with the fast selection, I don't like it. It really disrupts my work process by picking up and moving things that I don't want picked up and moved around. And right-clicking and dragging to move or rotate is just weird when combined with how it adds to the selection as well.
I feel that the widget and tweak mode idea should still be used instead.
-
You can disable fast select and use the original behavior in the guide options.
-
Fast Select has caught me out a few times now, where i've accidentally moved or rotated the wrong object.
My thinking is maybe it should be off by default, and easilly turned on by the click of a button.
Shortcut keys are a cool thing, and going between a, m, r and s for select, move, rotate and scale, is still a fast way to go anyway. They're basics and well set out as they are.
So i think fast select might be better for some people and operations, but should not be default, because could be tricky for learning people, like me..(http://s6.postimg.org/p4cqdev8d/grysmile.gif)
-
I always have it OFF as it drives me up the wall!
-
have to admit i wasn't keen either; i disabled Fast Select pretty quick after it kept dropping things instead of moving them.
-
Fast Select has caught me out a few times now, where i've accidentally moved or rotated the wrong object.
My thinking is maybe it should be off by default, and easilly turned on by the click of a button.
Shortcut keys are a cool thing, and going between a, m, r and s for select, move, rotate and scale, is still a fast way to go anyway. They're basics and well set out as they are.
So i think fast select might be better for some people and operations, but should not be default, because could be tricky for learning people, like me..(http://s6.postimg.org/p4cqdev8d/grysmile.gif)
I agree, a button (like I mention in this post (http://www.anim8or.com/smf/index.php/topic,4858.msg35360.html#msg35360)) and shortcut key would make this a powerful tool, especially when implemented for point editing and figure/sequence bone editing, but not as the default means of transforming.
-
Steve, Fast selection not work in SCENE MODE? is a bug or not is implements yet?
-
Fast selection is only implemented in the object and figure editors so far. The others are coming soon!
-
Thanks Steve :)
is because i was in doubt if it was a bug!
-
There's a bug that I haven't figured out exactly how to trigger, but it's happened more than once and I think ever since fast select's been implemented. Sometimes, after a bit of point-editing, it gets stuck in "select" mode and none of the tools work anymore in any of the editors. I don't know if this triggers only while in fast select mode, but after it's triggered it doesn't matter if in fast select or normal mode--none of the tools work. I have to restart Anim8or in order to keep working.
While I'm working on stuff I'll try to identify how it gets triggered, just figured I'd post here in case others have had the same issue.
-
OK if you can figure out any more clues let me know.
-
Hi Steve
I'm running 1318. Is fast select mode on in scene mode regardless of the tool bar icon fast select state?
The problem that makes me mention this is that when the mouse cursor moves over an object the orange highlight box appears, if the highlight is present when I render, it is included in the rendered file. If I have an object as a backdrop (covering the whole screen) it can be difficult to get to the render menu without bringing the highlight up. It is possible, I just need to be careful.
Could you hide the highlight and deselect everything as part of render initialisation?
Sometimes when an object is selected in object mode, the object selection box appears in the scene - not sure if this is always the case.
thanks
-
Are you using the OpenGL renderer?
-
AlecJames: Fast Select is working correctly as far as I can tell.
When it is enabled it should normally highlight the object under the mouse (but not always, for example for Drag Select, or the non-path objects in the Path editors). This indicates that clicking on an object will affect it's selection.
When disabled it should still highlight what the mouse points to in Arrow Select mode, because clicking on it will affect it's selection. In other modes, like Move or Scale, the selection can't be changed so things are not highlighted.
-
Yes this only happens when using the OpenGL render.
I'm wrong about fast select always being on - it works fine. (Don't know why I thought for a while that the selected items appearing in the render was related to fast select.)