Organizing Hammer's UI For Efficiently


The "raw" in "nodraw"
Jun 1, 2009
Organizing Hammer's UI For Efficiently

As a software developer, I spend a lot of time thinking about UIs and how to make them the most efficient for their users. Hammer's UI is relatively flexible, the independent window configuration allows you to place things to any setup of your liking. Laying down your UI may seem like personal preference at first glance but there's a lot of ways in which you can factually make things better for you. I'm making this post because I wanted to talk about my dual monitor setup that I've spent way too much time optimizing. A lot of it will be common sense, but I'm being thorough to allow people to think harder about their workspace.

Here's what it looks like:


The Viewports

The 3D view
- My 3d view is nearly fullscreen and there's a couple reasons for this. The 3d view should always be close to your screen's aspect ratio, you will get a better idea of the in-game visual composition of your level. The 3D view is also the one that you'll be using to select individual item so you want your 3d viewport to be the largest possible so you don't have to be as precise with your clicks.

The 2D views - There is a couple ways to divide the rest of the space into 3 but here are some educated recommendations. Having your 2D screens at 1/3 the size of your 3D viewport is reasonable because actions performed in the 2D viewports don't require you to be as precise. Lack of precision in selection and manipulation is going to alleviated by the grid snapping. Your side views (front/side) should be laid horizontally because that's likely going to match how your map is oriented. You're left with a vertical space for your top view. You should try to lay your maps down vertically on the top view to compliment this setup. I keep the top view closest to the middle of the window because things are usually moved/rotated around those axis, which means less mouse traveling on average to get things done. Furthermore, side views are not as useful for selection so those should be shoved to the far side.

The logical view - The logical view is an optional viewport that can be unlocked through VIDE or with regedit, it cannot be activated directly from hammer. It is hammer's best kept secret. I like to tuck it under my 3D viewport and pull it out only when needed as it is only really useful for doing entity work. It will give you a global view of all your entities and how they interact with each other through input/outputs (displayed as lines).


Note: The main downside to the independent window configuration is its display of redundant information. Most notably, each window gets a title bar displaying the file name and a set of window controls. We generally don't need any of that so I like to tuck the windows under each other. This maximizes screen space and prevents misclicking the close/maximize/minimize buttons.


The Toolbars

Intuitively, you may want to dock your toolbars in the UI. However, This forces you to have your toolbars pushed all the way to the sides. That's just too far for us. Sticking everything in the middle means that on average, it will be closer to your cursor (meaning less travel time). What's more, you'll find that tool/visgroup changes will often happen when transitioning from 3D to 2D views, it makes sense to have them along the way. How you organise your toolbars is very much up to you. You can make them overlap each other to make things a more compact. The way hammer handles window focus makes it not too bad to navigate so feel free to cover up information that doesn't need to be displayed all the time.

The toolbar - Optimally, you should get rid of that toolbar entirely. On top of not displaying interesting information, it is butt-ugly and can be replaced entirely with keyboard shortcuts. Obviously, this comes at the cost of some memorization.
The visgroup window - Don't have this window be higher than it needs to be, keep it as short as possible (may vary from map to map).
The manifest window - Definitely get rid of that if you are not using it but I'm rocking as part of my workflow so there goes that.
The top toolbar - While this one can also be completely replaced with keyboard shortcuts, it provides useful information on what is toggled on or off. You do not want to dock this toolbar because it will eat a large strip at the top of both monitors, getting it into this position is finicky but well worth it.


Notice that my Windows taskbar shows only on my left monitor. It's advisable to have it only on the left since it lets you drag the window further down and useful information is dispalyed at the bottom right of hammer's window.


I like to fullscreen my material browser on the right side to compare with my 3D view.

How To

Logical view
- This is where you can activate the logical view in VIDE. Note: Must be done while independent window configuration is off.


Independent window configuration - This is where you activate independent window configuration. Note: you should be using "Load default window positions with maps" as well.


...Well this is it, you are now fully aware of the extent of my obsession. When it comes down to screen space efficiency for hammer, I'm pretty sure this is the definitive guide. Now map away you devils!


Not the correct way to make lasagna
Aug 31, 2014
Holy Mary Mother of Joseph, you're keeping all the best secrets from us Fub! Two, three years of Hammerin' and I had no idea about the Logical View. And all the times that could've come in handy...


L16: Grid Member
Jun 8, 2015
For one screen this is what I use, tools are put bit more compactly


That was well written and reminded me of a few things GDC had in previous years. I use a similar setup that you have when I'm dual screen, but I normally just stick to one. You forgot to mention where chat was (close it completely) because it's a distraction. Dropping two links to as why good workflow is important and how there could be imrpovements to the editor. Might give others a few ideas for getting used to Hammer.

(Celia Hodent on developing UX practices)

(Robin-Yann Storm on the pros and cons of various editors and streamlining workflow)