Selection Group Filtering in the "Combine Selection Groups" Dialog |
The Filter Options in the "Combine Selection Groups" Dialog allow you to easily show and hide Selection Groups in the List view, in order to mark them for "Combining".
The Filter System is a combination of so called "Global Filters" (accessible via Buttons as well as Search Variables) and the Main Search Bar which supports complex expressions.
In general the Filter system mimics the system of the "Visibility Filters" in the Selection Group Palette, so knowledge about the Filter bar in this Dialog is transferable to there and vice versa.
|
Pay attention to tooltips. Nearly every function in the Toolbar has extensive tooltips listing functionality and hotkeys |
Global Filters |
Global Filters are directly accessible via exposed buttons in the toolbar. Global Filters can work on their own (e.g. "Show me only Face Selection Groups") or in concert with the Expression Filter bar
(e.g. "Show me all 'Wheels' in Selection Group Names on Selection Groups of Type Face")
Selection Group Type Filters prefilter the main list view to only show Selection Groups of a certain type, e.g. if you set it to "Face" only Face Selection Groups will be shown.
Mari can create 3 different types of Selection Groups, depending on which Scene Selection Mode is active, when you create a Selection Group:
- Face - containing Polygons
- Patch - containing entire UDIMs
- Object - containing an entire Object
You can target the different modes by ensuring the corresponding button is active:
Face Mode - Hotkey: F
Patch Mode - Hotkey: P
Object Mode - Hotkey: O
Example of first deactivating display of Face Groups, then display of Patch Groups - leaving only Object Groups visible in the list
Apart from using the Filter Buttons in the UI, Selection Type Filters can also be set using Variables in the Filter Field, which gives additional control.
The following variables can be used in the Search field to overwrite the Selection Type Filter. Variables are case-insensitive.
If a variable is used in the search, the UI Filter buttons will be disabled/grayed out
- $face
- $patch
- $obj
Example of targeting "All Face Groups containing the word "rails" and all Object Groups containing the word 'plane' "
Variables can be inverted to act like "Except" or "Not" by prefixing them with an exclamation mark (!) e.g.
- !$face
- !$patch
- !$obj
You can use the variables on their own or combine variables freely e.g. "$face,$obj" to show both Face and Object Groups. Or "wheel+$face" to only show Face Groups containing the word "wheel"
Example of targeting "All Selection Groups that are not Face Groups and contain the word window "
The Visibility Filters prefilter the List View to only show Selection Groups that are marked visible or invisible in the Mari Selection Group Palette.
The Selection Group Visibility State can be seen in the "Scene Visibility" Column of the List view
Example of one visible and one invisible Selection Group in Mari's Selection Group Palette. The "Scene Visibility" Column of the Dialog mimics this
By default both Visible and Invisible Groups are displayed, however you can toggle the buttons off to limit the display to either just visible ones or just invisible Selection Groups.
Example of only showing invisible Groups in the List View
Apart from using the Filter Buttons in the UI, Visibility Filters can also be set using Variables in the Filter Field, which gives additional control.
The following variables can be used in the Search field to overwrite the Visibility Filters. Variables are case-insensitive.
If a variable is used in the search, the UI Filter buttons will be disabled/grayed out
- $vis
- $invis
These variables can also be inverted by prefixing them with an exclamation mark (!). In these cases they would act as their counterpart
- !$vis .... is equal to $invis
- !$invis ... is equal to $vis
You can use the Variables on their own or combine and target them to only specific Groups e.g.
wheel+$vis, rails+$invis
.. will only show Selection Groups containing the word "wheel" and that are visible as well as Selection Groups containing the word "rails" that are invisible.
If you for example only type $vis into the search field, only visible groups will be shown in the list view and the behavior is the same as if you untick the "Invisible" Button
The "Active" Filter will pre-filter the List View to only show Rows that have the "Combine" Checkbox ticked on.
Apart from using the Filter Button in the UI, Active Filters can also be set using Variables in the Filter Field, which gives additional control.
The following variables can be used in the Search field to overwrite the Active Filters. Variables are case-insensitive.
If a variable is used in the search, the UI Filter buttons will be disabled/grayed out
- $act
- !$act
$act will only display Selection Groups with a "Combine" Checkbox, while !$act will show Selection Group Rows without a ticked Checkbox.
You can combine these variables freely and either use them alone or in combination with other filter terms e.g.
$act+wheel+$face
..to only show Face Groups, containing the word "wheel" that have the "Combine" Checkbox ticked on.
The "Path" Filter Buttons allow you to limit the Search done via the Search Field, to parts of a Selection Group Name.
If you import a non-combined mesh from an application such as Maya, creating a new project in Mari might auto-create Selection Groups for you, corresponding to the Hierarchy in Maya.
Example of a Model Hierarchy inside Maya's Outliner and the corresponding Selection Group Name in Mari
The two "Path Filter" Buttons allow you to limit the search to
- the full path and object
- just the path
- just the object
If only the Left Facing Arrow is active ..
the search will only evaluate the Group elements of the Name e.g.
- /Body/Head/Eyes/
If only the Right Facing Arrow is active ..
the search will only evaluate the Object Name e.g.
- /Pupil_left
- /Pupil_right
If both arrows are active, the full name is evaluated.
Apart from using the Filter Buttons in the UI, Path Filters can also be set using Variables in the Filter Field, which gives far more nuanced control.
Please look further down on this page in the Expression Filters / Path Search Operators Section for details.
Expression Filters |
Entering Expressions and word searches will be the main way you interact with the filter toolbar, to control what Selection Groups are made visible. Expression Filters are executed and updated while typing

|
Global Filters always run first, before any Expression or Word Search. |
The Search Field maintains a project specific search history that suggests auto-completes while typing.
A completion field will appear while typing, suggesting previous search terms
- To quickly clear the Search field, press on the "Clear Search Field" Button
- To remove the search history from a Project SHIFT+Click the "Clear Search Field" Button
Use the "Clear Search" Button to delete a search or clear the Search History
In its most simple form you can use the Filter Bar to search for the occurrence of a specific word within Selection Groups.
Any Group where the word appears, will be be shown in the list view- groups where the word does not appear will be hidden from the list
The Search is always case-insensitive, meaning "wheel" lowercase will match to "Wheel" or "wHEel".
Word Operators:
, (comma) |
Use the comma (,) operator to treat word searches as OR.
|
+ (plus) |
Use the plus (+) operator to tread word searches as AND
|
! (exclamation mark) |
Use an exclamation mark (!) operator to exclude words from the search
|
Word operators can be freely combined into more complex expressions e.g.
roof+!chimney,door-handle
Will match and turn visible:
- any Selection Group containing the word door
- any Selection Group containing the word roof - if the Group name does not also contain the word chimney.
Will force any Selection Group to invisible that:
- contains the word door and handle
Variables can be used to fine tune your search e.g. "$face" filters only for face selection groups directly via the search string, instead of using the Selection Type Buttons.
Each variable can exist in a so called "global Context" or in a "local Context" and can be inverted by prefixing it with an exclamation mark (!).
Global vs Local Variable Context:
$face,wheel,cart,horse |
The "$face" type filter is used in separation and will apply to all search words - wheel, cart and horse. |
$face,wheel,cart+$patch,horse |
The "$face" type filter is used in a global context and applies to the words wheel and horse. The word "cart" has its own local context type filter and is goverend by "$patch" |
Available Variables:
$face, !$face |
Face Selection Groups, prefix with ! to act inverted as "Except".
Note, that if you only type $face (and no other words) into the expression field, all face groups will be shown and other selection group types will be hidden. This is a special case where a Selection Group Type Variable can affect other Selection Group Types as well. |
$patch, !$patch |
Patch Selection Groups, prefix with ! to act inverted as "Except".
Note, that if you only type $patch (and no other words) into the expression field, all face groups will be shown and other selection group types will be hidden. This is a special case where a Selection Group Type Variable can affect other Selection Group Types as well. |
$obj, !$obj |
Object Selection Groups, prefix with ! to act inverted as "Except".
Note, that if you only type $obj (and no other words) into the expression field, all face groups will be shown and other selection group types will be hidden. This is a special case where a Selection Group Type Variable can affect other Selection Group Types as well. |
$vis, !$vis |
Only searches within Selection Groups that are already visible in the Selection Group Palette
|
$invis, !$invis |
Only searches within Selection Groups that are already invisible in the Selection Group Palette
|
$inset:SETNAME, |
Searches within visible selection groups within the specified Visibility Set.Name
|
Path Search Operator can be used to isolate word occurences within a path-style Selection Group Name
- /Body/Head/Face/Eyes/EyeLeft
- /Body/Head/Face/Eyes/LidLeft
In the above example a search for "eye" would show both Selection Groups. However we want to only view the group that has "eye" in the Object Name "EyeLeft".
To do so we can use Path Variables to isolate parts of the Path to search in. Path Variables can again be used in a global context or in a local context, scoped to a specific word group.
$/, $//,$/// etc. |
You can use the $/ (forward slash) variable with any amount of forward slashes to specify the part of the Path Style Selection Group Name to search in.
Add as many slashes as needed to the variable to narrow down a search to a specific part of the path this way |
!$/, !$//,!$/// etc. |
Using the path search variable with a prefixed ! (exlamation mark) will reverse the counting of slashes, counting from the right side of the name.
As with any other variable, the path search can be scoped globally (e.g. "$/,eye,head") or locally to specific |
<== Previous Topic: UI Overview