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

My tools: TDM Packer

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

    • The Black Arrow

      Hey @Ansome, are you still around? I think it's been about 3 months since you've had an issue with an SSD, right?
      · 3 replies
    • Sotha

      Brushes: ~1300
      Patches: ~990
      Entities: ~960
      Ambients: Done, EFX: Done, Objectives: Done, Briefing, Done, Location System: Done.
      Going to final polishings before beta.
      · 0 replies
    • Sotha

      WIP mission name confirmed: "The Last Offering"
       
      · 7 replies
    • Sotha

      Today I started writing readables for my WIP mission.
      I wrote my usual text and then crammed it into AI and boom, high quality stuff comes out.
      I used to say that clipper is the mappers best friend, but now it seems it is more like "AI is the mappers best friend."
      · 3 replies
    • The Black Arrow

      Just saw further into 2.13 development, or is it 2.14? Anyway, proper Parallax Mapping...Absolutely fuck yes, please!
      · 2 replies
×
×
  • Create New...