Viewport and level editing enhancements for Unity

After getting annoyed by Unity’s default level design workflow I started a
user interaction experiment to come up with a better set of mechanics
for the level editing process.

The main guidelines for this interaction design are speed and visibility:

Speed: The most common functions should be quick to execute with a physical
action which allows the development of muscle memory.

[ul]
[li]The left hand shouldn’t leave the base position for the vast majority of the operations.
[/li]> [li]The right hand shouldn’t leave the mouse at all.
[/li]> [li]No hunting for transform gizmos, drag anywhere.
[/li]> [li]No finding a button to switch coordinate systems, breaks flow and slow.
[/li]> [li]Changing navigation modes should be quick.
[/li]> [li]Navigation mode for detailing the map (lot of minor, precise tweaks of the view).
[/li]> [li]Navigation mode for broad strokes (convenient, ratcheting free way to cover greater distances).
[/li]> [/ul]

Visibility: See only what you want to see at any given moment.

[ul]
[li]Quickly toggle visibility of particular items.
[/li]> [li]Quickly toggle visibility of categories.
[/li]> [li]See otherwise invisible properties like light radius or collision geometry on everything.
[/li]> [li]See everything in wireframe mode, without clipping or backface culling.
[/li]> [li]Ability to lock items when they stay visible but can’t be manipulated.
[/li]> [li]Numerical data and visual guides about transformations.
[/li]> [/ul]

Main page and browser demo.

It’s a very early release with limited feature set but I’d really appreciate
feedback on this as I’m really interested in different views on the level
editing process.

very nice! i like the way you think!

I’m getting a blank screen from the player linked on the page - I see the player loading but it doesn’t show anything. Server problem maybe?

rgkovach123: Thanks. :slight_smile:

Theodox: Hmmm, I’ve just tried in both Firefox and Chrome (cleared
cache) from Hungary and seems to be loading fine. It’s on the same
server as the project page so maybe it’s some permission thing, I’ll
look into it.

Restarting Chrome fixed it.

Here is an update:
[ul]
[li] Local quick transform, local move and local rotate transform modes are available on the A, S and D keys.
[/li][li] Usability issue: During local movement mouse motion is translated to workplane without factoring in the camera so a horizontal mouse stroke might move the object diagonally.
[/li][li] If nothing is selected then holding a transform mode key will temporally select and manipulate the object under the mouse. This selection is then dropped when leaving the transform mode.
[/li][li] Orthographic wireframe view is toggled with the BackQuote/Tilde (` ~) key. In that mode LMB/MMB pans, RMB zooms. The orientation of the orthogonal view depends on the perspective camera’s rotation.
[/li][li] Ideally only clicking on a wireframe edge would select objects but it doesn’t work that way yet so one mesh can block another when it comes to receiving clicks.
[/li][li] Not useful operations are disabled in orthogonal view.
[/li][li] Bug: In certain orthogonal views with certain object rotations local transforms don’t work.
[/li][li] Forward move in Move mode (MMB) shows a more helpful, adapted workplane.
[/li][li] Transformations are now also applied after button release.
[/li][li] Scene assets now have “old wooden blocks” visuals.
[/li][/ul]
Main page and browser demo.

Another update:
[ul]
[li] “Space” drops selection from now on.
[/li][li] “Delete” deletes selection.
[/li][li] Alt + MMB brings up the navigation pie menu.
[/li][li] Alt + RMB shows the view pie menu for selecting view presets (top, bottom, etc).
[/li][li] Pie menus have name labels and color coded slices.
[/li][li] “C” or “1″ performs a copy. The type of the copy is indicated at the bottom center of the screen. When nothing is selected then any object under the cursor will temporally selected and processed.
[/li][li] Holding “C” or “1″ shows the pie menu where one can select copy type.
[/li][li] “V” or “2″ now pastes the chosen type of data, shown at the bottom center of the screen. When nothing is selected then any object under the cursor will temporally selected and processed.
[/li][li] Holding “V” or “2″ allows to change paste type.
[/li][li] “Z” opens the mesh selector pie menu. The chosen mesh will be copied to the clipboard.
[/li][li] “X” opens material selector pie menu. The chosen material is copied to the clipboard.
[/li][li] Labels at the top of the screen indicate mouse button functions for the current transform tool. The copy and paste modes are shown at the bottom.
[/li][/ul]
Main page and browser demo.

Here is a more user friendly introduction to the system:
http://www.zspline.net/blog/2014/04/02/getting-started-with-valee/

Would you be so kind and show this to your level designers? I’d like to get
as much feedback as possible before deciding the future of the project.
Technically it is possible to implement this in Unreal Engine 4 but it would
be rather expensive so I’d like to know if the community considers the idea
useful.