Ah sorry, yes its a little confusing, since some names are used in different ways, my fault, sorry.
A widget is (in UED3 Term) the control object for translate, rotate or scaling, and sometimes referred as gizmo, locator or pivot
Here is a screenshot of a translate widget
Lets see about navigation:
First of all i agree its really a complex task and also a very important one. There is a good reason why so many tools and company's have so many concepts for a "good" navigation.
And yes there is no perfect solution as any artist is individual and therefore wants his solution based on his experience.
For me there are 2 main ideas for controling a software:
- 1. Utilize already known keys and behaviors known to the user , like Ctrl+C for copy Ctrl+V for paste etc
- 2. Use unique and different behaviors in favorite of a more fluid,intuitive,precise workflow.
There always mixtures of these two ideas as well.
The most and first way to find out is to prioritize the goal of each program, or in other words:
What is the most used key/mouse button ? What is the most important part to fulfill the task the App was made for.
And also: Is a current way blindly used but way to complicated or outdated ? Are there much more context sensitive ways to solve problems ?
This is a very science of its own
And I'm not really an expert, however i had to used many tools in the past and found out that the first conclusion not always leads to a better way.
In case of UED3:
I'm not owning the latest editor so far, but i think i get a copy of "UT3" or better "Gears of War", just to check it out.
Thinking of working as a level designer, and always as artist is:
- To have (ideally) full control at any time of the workspace I'm in
can i modify the gui, dock and undock windows, is it dynamic for re sizes, can i set a key for all commands on my own, is there an overview to all available commands ?
- To have full overview of my task that I'm doing, to show and hide specific parts that im focused on.
can i filter by categorys, sets, layers or type, can i isolate specific elements, can switch into different visual supporting modi, are tools smart, modable or can i combine them, is precision and control available ?
- Workflow easy enough to become intuitive rather then needed to be memorized.
is the gui based on distinguishable symbols, is there an instant feedback close to the final result, is a toggle more usable than 3 different buttons
Google Sketchup is a wonderful example because its a pleasure to see how easy it is to create very complex rooms in minutes.
Icons are few, distinguishable, and work smart enough, so smart that i.e.: a extrude can also be an intrude partial or full, it works on all planar surface fast and the same way, crops away any illegal surfaces, tessellate the face and so on. Still its only one simple tool, no need for options.
Also Sketchup is totally specialized on creating walls and ceiling fast and efficient, so snapping and orienting is so smart it supports your action WHILE creating, and not AFTER.
The list goes on .. Skechtup simply is amazing and commonly used in many company's as a pre-production tool due to its speed.
I also vote for some tool concepts in Ca3D !!!
Pen and extrude the way they work in Sketchup would give a tremendous speed up, simplify the way to build brushes and a much more intuitive way to add complexity to a brush.
It's so damn intuitive to carve in holes and add volumes to existing geometry. Most wanted if possible
I really think that the event based concept of CaWe is modern and flexible enough for all tasks as well as to be able to get fully customizable and context sensitive for a tool.
So for simple events we have to decide on priority what buttons need to be the most used and also based on constant logic.
LMB is THE most used button so its mapped on the most used tasks:
- click LMB on object (in any view) to select or deselect any.
- if anything is clicked the transform widget/gizmo is active.
(in 3D) Clicking and drag on a handle you can move,scale,rotate in this direction (toggle using spacebar)
(in 2D) same as in 3D except you can simply drag anywhere to move,scale in the 2d plane of the viewport
- click on an empty space will deselect
- click and drag on empty space will move the camera along the world, resulting in a pan
You asked why LMB drag is not used for doing a marquee selection as in the window explorer.
Answer: It's not an data explorer and the need for selecting multiple object at once is much less important, as you deal a lot more on a one by one object manipulation.
If an object would be used with another you would rather group it together as is faster and less cluttering than using a marquee selection (also prevents from selecting unwanted elements).
Besides you need multiple selections more on editing values, again here UED3 offers logic filter like "select adjacent walls" or selection groups, this speeds up a lot !
Interesting that you prefer arrows to navigate for the 2D, any reason why ?
I use mouse because it very much faster then arrows and also much more precise and not stuttering. Also traveling a far distance is much easier with mouse.
Besides i really don't like to move my left hand that far to the right (as a right handed mouse user), and using SPACE is also convenient for a Photoshop user like me (to pan the canvas).
I also have another idea that could be helpful:
There is really often a need for a "repeat last tool/action" key
This also speeds up different things that can be tedious, the result could be placed exactly on the mouse cursor in 3D view.
And Yes use the MMB, every additional button can be helpful
Same goes for context menus, more control, less cluttering. I'm also a fan of toggle and sticky keys.
While toggle should be self explanatory, sticky keys are a little underrated but REALLY efficient:
The first application i found using this method was XSI.
Sticky keys take a little getting use to, but once you do it is a very easy concept to understand and take advantage.
A sticky key is a key board hot key that can toggled.
If you tap the "v" key, you will turn on the Move tool.
If you press and hold the "v" key, you will turn on the Move tool, but when you let up on the "v" key, you will turn off the move tool. By tapping on the "v" you are toggling on the tool and tapping it again will turn it off. That is a sticky key.
So an example of a work flow would be to tap the "v" key to turn on the Move tool, then hold down the "t" key to select some vertices, let up on the "t" key and XSI will return you back to the Move Tool and now move the vertices.
I found this quite useful when switching between 2 important tools/modes i need.
Sticky key timings can be adjusted under the User Preferences.
And in the end:
Picasso once said something like i'm actually nothing more
than a stealer!
Other painters are poor men when i get to know their works , because I steal all their ideas and make it better.
I guess there is no need to reinvent the wheel, so use whatever inspirations and ideas may come and make something new out of it
Just my thoughts about it