Jump to content
The Dark Mod Forums

On layers and filters, and a comparison to Hammer's visgroups


Recommended Posts

I've been thinking about this for some time. I think the layers and filtering systems could be greatly improved, and, having used Hammer extensively in the past, I can't help but bring my ideas from it. Because, tbh, I think Hammer's way of doing this is the very best example of how we could improve layers and filters (for some odd reason, no other editor that I've used does a good job at this -- not even TrenchBroom).

And the reason I'm putting layers and filters in the same sentence here, is because they're actually the same thing (or ought to be). I'll explain that below.

 

On layers:

One of the issues with layers is that the interface is a bit bulky. I've had to make extensive use of them since I started a complete overhaul of the mission map I'm currently building, because it's easier to work with layers than with regular grouping (because you need to ungroup to edit stuff, then probably isolate things, then re-group them).

But I've been finding layers quite unwieldy as well. This is how my current layers list looks like:

Spoiler

image.thumb.png.663c4cc0639dbe7740869fab92984346.png

It doesn't fit my screen anymore. But you might notice another issue: I've resorted to using underscores and prefixes (or CAPS) to try to keep them organized, because there's no way to group layers by their relationship. But I think there's also something to be said of the rename/delete buttons, which could be on a drop down menu, to save screen space. As it is, I've had to keep reducing the size of my DR window to allow more and more space for the layers panel, as the names grew wider and the buttons became hidden.

Another issue is the buttons that are at the bottom will go off into oblivion when you have so many layers. I think they might be better off in a toolbar at the top.

Yet another issue, is you can't hide things that belong to more than one layer, if one of them is set to visible. The visible one will always override visibility to on. Say you have stairs on floor1 and floor2, and you want to nudge floor1 stuff but not the stairs. In that case it's easy to deselect just the stairs and nudge away, but you might easily imagine it becoming complicated when you have many more things to deselect that overlap between two or more layers. You'll forget some, and you may not notice your mistake soon enough. So it would help if you could select floor1, then hide floor2, and it would hide all the overlapping content with it, removing it all from the selection.

As another facet of this issue, I have a layer there called new___thug_house, which was supposed to contain the entire house, but doesn't have anything in it anymore, because when it did, then I couldn't hide anything by hiding the other layers. And so at this point, the only way I have to select the entire house, is by clicking all the layers one by one (which is one reason I didn't create even more layers related to it).

 

On filters:

The main issue with filters is that you have to either keep browsing the menu, or remembering whatever hotkeys you reserved for it. E.g., I have ALT-P, ALT-SHIFT-P for patches or paths, and ALT-C, ALT-CTRL-C and ALT-SHIFT-C for clips, collisions and caulks, but I often forget which is which, so, for me, there's always a bit of recap trial and error involved in using some filter hotkeys.

I suspect this is also a limiting factor on how many filters DR offers by default, or even how many users can feasibly create. Because the menu would grow even more unwieldy if DR would support even more filters, and you can only feasibly have (and remember) so many hotkeys with a consistent pattern.

 

 

Now, Hammer did this this pretty well. And the way it did it shows layers and filters ought to be the same thing. It was all in one place.

To be perhaps a bit pedantic, let's face it, the concept of "layers" doesn't apply anywhere in the context of a map (TrenchBroom is doing the same mistake). If we call a spade a spade, then "groups" is what layers actually are. Or more accurately, "visibility groups", which is what Hammer rightfully called them (VisGroups, for short).

Here's what VisGroups look like in Hammer:

Spoiler

image.thumb.png.0dd36f20e8dc48526456062bfd2eead7.png

They are compact and still fit my screen (on a map that reached the limits of Hammer (8192 brushes)). But even if they didn't, the tree structure makes it easy to collapse them. And it also makes it easy to organize things.

In the way Hammer did it, you can also toggle off a parent visgroup and then toggle on a child visgroup to override visibility. Or, you can do that with unrelated overlapping visgroups as well. The last group you toggle on/off will override the objects it contains to visible or hidden. 

Now, you might notice there's an "Auto" tab at the top. This is where filters come in. 

Spoiler

image.png.78697aeba94fbaa330c04f7dc55d5331.png

As you're editing your map, Hammer automatically creates visgroups for all the things you have as filters in DR and more. There's no need for menu access or hotkeys, they're all right there at the tip of a single mouse-click, and are listed in the same place as other visgroups (Monster clips would be listed under "Tool Brushes -> Clips", but this was a deathmatch map, so there aren't any). And if you need to disable all filters you can just toggle the parent node off.

DR actually has one advantage in this: it already allows the user to create custom filters. So with a system like this one, it could support more (and more specific) filters by default, as well as allow users to expand it.

Edited by Skaruts
For clarity
  • Like 1

My FMs: By The Cookbook

Link to comment
Share on other sites

I agree. The Hammer interface looks like a much better way of presenting this functionality.

Blender also does a good job here — in fact they recently got rid of their "Layers" functionality altogether and merged it into the Outliner/Collections window.

collections.png.1071c39c2cd2d7ecbe68f1077b4ab6e8.png

  • Like 1
Link to comment
Share on other sites

Yeah, a hierarchy for layers would be great. I like to put each floor and deck of each building and ship on its own layer, which can get a little unwieldy as the map grows.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent Status Updates

    • OrbWeaver

      Does anyone actually use the Normalise button in the Surface inspector? Even after looking at the code I'm not quite sure what it's for.
      · 2 replies
    • Ansome

      Turns out my 15th anniversary mission idea has already been done once or twice before! I've been beaten to the punch once again, but I suppose that's to be expected when there's over 170 FMs out there, eh? I'm not complaining though, I love learning new tricks and taking inspiration from past FMs. Best of luck on your own fan missions!
      · 4 replies
    • The Black Arrow

      I wanna play Doom 3, but fhDoom has much better features than dhewm3, yet fhDoom is old, outdated and probably not supported. Damn!
      Makes me think that TDM engine for Doom 3 itself would actually be perfect.
      · 6 replies
    • Petike the Taffer

      Maybe a bit of advice ? In the FM series I'm preparing, the two main characters have the given names Toby and Agnes (it's the protagonist and deuteragonist, respectively), I've been toying with the idea of giving them family names as well, since many of the FM series have named protagonists who have surnames. Toby's from a family who were usually farriers, though he eventually wound up working as a cobbler (this serves as a daylight "front" for his night time thieving). Would it make sense if the man's popularly accepted family name was Farrier ? It's an existing, though less common English surname, and it directly refers to the profession practiced by his relatives. Your suggestions ?
      · 9 replies
    • nbohr1more

      Looks like the "Reverse April Fools" releases were too well hidden. Darkfate still hasn't acknowledge all the new releases. Did you play any of the new April Fools missions?
      · 5 replies
×
×
  • Create New...