13 July 2020
NOTE: Mari increases its level of performance with newer, more advanced hardware configurations. However, Mari is tested and capable of operating on many older, prior-generation systems. For this reason we are listing below-minimum requirements, which are recommended, and on which tests have been performed. Your particular needs may vary from that of other users.
Linux Desktop Managers: Mari is officially tested on GNOME and MATE. While it generally performs well on other desktop managers like KDE, most of our bug fixes will target those specified above. Some desktop managers like XFCE have not been tested with Mari and therefore will not be supported.
*Displacement preview is currently only available on the cards and drivers that support OpenGL 4.0 or newer.
*The use of virtual memory improves stability and helps prevent data loss on large projects.
'Recommended' does not guarantee that it meets your particular needs.
The configurations listed below are those that Foundry have tested with Mari. Due to the constantly changing nature and wide variety of computer hardware available in the market, Foundry is unable to officially certify hardware. The list below can be used as a recommendation and does not guarantee that it meets your particular needs.
Please download and install the latest graphics driver from the NVIDIA or AMD websites, and ensure that you are using 8.982.1 drivers or higher for AMD cards.
If you encounter any issues, please contact Customer Support directly through the Support Portal at the following address: https://support.foundry.com.
|AMD Prosumer Graphics Cards||
|NVIDIA Prosumer Graphics Cards||
|NVIDIA Enterprise Graphics Cards||
In previous versions of Mari, baking would flatten the upstream graph results for all patches within a project even if the results would be masked for a small range of patches downstream. This would waste a lot of computation time when your objects had a large amount of UDIMs. Mari 4.6v4 introduces the ability to use a Limited Patch Range when flattening upstream results to a Bake Point node. You can now limit baking to the required UDIM patches by specifying a patch range and then select a background color for patches outside the given range - reducing bake times and giving the user more control to reduce project complexity with Bake Points.
Users now have the option to automatically export the flattened results of a Bake Point to disk after updating its upstream results. If Export on Bake is enabled, Mari will rewrite textures to a given path when patches are baked instead of requiring the user to manually export the updates. This streamlines the process of sending your iterative updates to other applications.
A new Local Space Mode has been added to the existing Transformation Tool allowing you to manipulate the transform gizmo along the object axises once it has been rotated. Manipulating the Transformation Tool handles while holding the CTRL key now edits the transformation in iterative steps. Additionally, the hit area for Transformation Tool has been increased, removing the requirement of pixel perfect handle picking.
ID 407155 - The selection area for the Transform Tool has been Increased around handles for easier manipulation.
ID 423733 - The Canvas viewer's Scalar Mode check will now correctly handle data from Shader Model defined streams used by Multi-Channel and Shader Nodes.
ID 434792 - Mari now maintains the state of the Pin/Float Palette button in the Palettes Toolbar across sessions
ID 415556 - The Transform Tool now supports switching between both Local and Global space transformations via the drop-down in the Tool Properties toolbar.
Additionally, holding the [CTRL] modifier while translating an Object or Locator will perform a translation in 1 unit steps. Holding [CTRL] while rotating an Object or Locator will perform a rotation in 5 degree steps.
ID 422512 - The visual appearance of edge connections in the NodeGraph has been updated to use a smart-radius boundary and straighter connections between Nodes.
ID 423551 - The new preference item GPU > Canvas > Pause Canvas Rendering has been added. When enabled, UI interaction is improved by pausing the canvas rendering smartly when the mouse cursor is outside the Canvas.
ID 429388 - When adding a Geo Version with many new patches, Mari would take an unexpectedly long time to complete the import process.
ID 427586 - The opacity of UV grid lines was reduced in order to allow better distinction from the UDIM boundaries.
ID 380848 - Mari now allows users to convert Graph Layers to a Paintable Layer.
ID 434218 - The Modo Bake & Render Palette has been updated to version 14.0 and re-enabled on macOS. The Modo Bake & Render Palette now includes a new preset called Thickness.
ID 426347 - The Levels adjustment layer/node now allows users to enter negative values without clamping.
ID 369368 - A new Preference item Default Import Colorspace has been added to Edit > Preferences > Color which allows you to specify the default colorspace setting of Import dialogs.
ID 430568 - Images used by any node type inside of a Material are now bundled when exported.
ID 432523 - When launching Mari with an Intel GPU, we no longer suggest that this is in an experimental state. Mari does not support Intel graphics cards.
ID 406575 - When opening a Mask, Adjustment or Channel Layer Stack pop out, the palette pin state will now match the pinned/floating open mode set in the Palettes Toolbar.
ID 434698 - Lighting and shading has been added to Transform Tool handles for better visibility of orientation.
ID 437550 - The new Preference, Preferences > Navigation > Transform > Stepping Angle, allows to configure the stepping angle for rotation of Objects and Locators.
ID 434706 - Locator objects created from a Locator List now spawn as a child of the current object. Locator names are also now inherited from the Layer/Node used to create them.
ID 242166 - When dragging a NodeGraph connection onto a Node, the presented list of Node inputs and outputs will now show the pretty name of each port, rather than the internal name.
ID 353263 - When viewing the Node Port Connection List by dragging a NodeGraph connection onto a Node, the list will now show the pretty name of the Inputs/Outputs in order of appearance on the node.
ID 353550 - When viewing the Node Port Connection List by dragging a NodeGraph connection onto Multi-Channel Nodes, the list will now display a port's full name instead of the 4 character abbreviation.
ID 428110 - The CC0_Textures Material Ingest Template has been updated to support the new naming convention used by CC0Textures.com
ID 435569 - Text entered in the Python Console input is now saved and restored across Mari sessions
ID 437649 - Users are now able to configure which of Mari's docking areas own each corner of the main window using Edit > Preferences > Misc > Window Corner Dock Areas, which allows palettes to extend to the full height of the window when changing ownership to the Left and Right Docking Areas.
ID 437552 - When creating a new Locator from a LocatorList, the current transform properties of the LocatorList fields are applied to the new Locator.
ID 429532 - When setting the Paint Through source image to Raw, the Paint Through Tool would incorrectly paint a color-converted stroke.
ID 430576 - Images used by Image type attributes inside Material nodes were not bundled with their Material file when exported from Mari.
ID 434111 - Renaming an output of a Group node would not correctly update connections from the renamed output.
ID 438250 - If certain NodeGraph shortcuts were triggered before a project was opened, Mari would crash.
ID 437261 - When copying and pasting a node, importing an MNG file, importing a Material or duplicating a Layer, Mari would emit nodeCreated() signal for all the nodes in the Node Graph.
ID 427471 - When sibling streams were located in different sub-directories of a common Material Root Path, the Material Ingest Tool would not find more than one valid stream.
ID 436867 - When creating a Graph Layer, Mari would automatically overlap the placement of the Input and Output nodes which would then need to be rearranged.
ID 396645 - When applying a Filter to the Current Painting on a Projected Image, the Paint Buffer would unexpectedly resize.
ID 418186 - When importing a Geo-Channel into a PTEX project, Mari's application window would turn black on macOS.
ID 423841 - When adjusting the parameters of Hue Filter on macOS, the Mari application window would unexpectedly render black.
ID 424133 - When an invalid path was given, the Material Export dialog displayed an empty warning message.
ID 422600 - When applying Filters such as High Pass, Blur and Gaussian to Current Painting, the Filter Preview would appear brighter than the actual applied result.
ID 423144 - Zooming in and out of the NodeGraph view would cause the Viewport centre to drift. Additionally;
ID 425758 - When exporting a Material containing images from an imported Session, image type attributes were not correctly bundled in the .MMA.
ID 426007 - When adding an Object Version to an Object containing baked Bake Point Nodes on macOS, Mari would unexpectedly crash.
ID 426173 - On macOS, if the Play Controls toolbar was spawned then opening a Project would cause Mari's main window to render black.
ID 423863 - The Modo Bake & Render Palette would incorrectly export 16bit textures when 32bit was selected.
ID 427428 - Directly viewing an Output node inside of a Group node would not correctly update in the Canvas.
ID 427191 - When a Group node had many promoted Knobs, editing the Name field of a Backdrop node contained within would be slower than expected.
ID 426991 - Certain combinations of project version and Mari version could cause significant slowdowns with UI interaction.
ID 434240 - When cancelling an Export Dialog, Mari would not save settings correctly though the dialog was cancelled.
ID 427718 - When using Dynamic shader compilation mode, the Height As Normal node would generate an incorrect normal map from nodes with multiple outputs.
ID 428171 - The Bump and Normal mappings of the Principled BRDF Shader would incorrectly affect specular lighting.
ID 432021 - Mari crashed during importing Geo-Channels when using the background importer option.
ID 430563 - Imported nodes with Color type attributes would silently modify the Colorspace flags for those attributes.
ID 430566 - Images imported from Materials were not added to the correct Material Images tab in the Image Manager.
ID 425585 - A duplicated Bake Point node would incorrectly share the same image set as the original Bake Point node.
ID 428233 - On importing Bake Point nodes into a new Project, Bake Points would appear Clean and could not be baked.
ID 428229 - After importing, Bake Point nodes would appear green/Clean even though the baked data was no longer valid.
ID 430271 - When copying and pasting Bake Point nodes between different Objects, nodes would appear Clean although the baked data was invalid.
ID 428238 - Nested Bake Point nodes would not bake in the expected order. Additionally, altering the contents of a Group node will now only invalidate downstream Bake Point nodes from affected Group node outputs.
ID 424914 - The Project Settings dialog was too large when opened, potentially extending off the bottom of the available screen space.
ID 438896 - The controls within the View Transform toolbar would disappear when switching to the application's default layout.
ID 436667 - Opening the Export Manager multiple times for the same project within a single Mari session could incorrectly create duplicate entries that conflicted with each other.
ID 432088 - Spawning the Color Picker dialog from the Layer Properties would cause Mari to crash unexpectedly.
ID 432464 - When viewing the Node Properties of a Multi-Channel Merge with no Current Channel, you would be unable to select and adjust the individual properties of the contained streams.
ID 433197 - When modifying a Node or Layer name, no entry would be added to History. Likewise, changing a Node or Layer name would not trigger the Project Save confirmation dialog as no Undo entry had been added.
ID 435387 - Modifying the Camera Focus actions (by default 1,2,3,4,5,6,A,F keys) would not be possible to undo.
ID 438591 - Modo Bake Presets with spaces in the name would fail when being baked to a Geo-Channel.
ID 429091 - Channel properties would incorrectly show redundant bakePointNodeState attribute for old projects.
ID 268302 - When modifying an Object's position or rotation with the Transformation Tool, no visual indication was given to reflect the changes made.
These are the changes relevant to developers.
We have taken ownership of a mesh importer plugin for USD originally developed at Pixar. The plugin currently only supports UsdGeomMesh and UsdGeomXform primvar types. It does not yet support UsdShade, UsdGeomCamera, UsdLux or other Usd Schemas. However, we have added native support for OpenSubdiv parameters on UsdGeomMesh, which requires CAPI extensions introduced in Mari 4.6v4.
The plugin source code is available for download at:
ID 322657 - Mari now supports the ability to set NodeGraph context Shortcuts using the Python API:
ID 391169 -
mari.current.channel().importImages() will now throw an IO exception with the message "Import failed: Import was cancelled" if the user chooses to cancel the import operation.
ID 432059 - It is now possible to flag a color type attribute as scalar via the API. e.g.
ID 97219 / 45444 - The following functions have been added to the API to allow the querying and configuring of a Point light:
ID 436704 - Added
mari.current.nodeSelection() to the Python API as an alternative to
ID 430139 - You can now capture the Canvas image at a specified size the the additional two arguments:
mari.Canvas.capture(self, Width=0, Height=0)
ID 435569 - Text entered in the Python Console input is now saved and restored across Mari sessions
ID 428077 - Mari's Undo stack would be accidentally disabled after using the
exportImagesFlattened() call in the API.
ID 432600 - Mari would incorrectly return True when checking if a selected Multi-Channel Material is Procedural with
ID 321962 - When copying and pasting a node, Mari would incorrectly emit nodeCreated() signal for all the nodes in the Node Graph.
ID 428992 - When using
setMetadataRange() function with the Python API to set the Metadata range of a Float attribute, Mari would mistakenly return an error.
ID 431444 - A Cloud node originating from older projects would not return the correct type when using the
ID 437432 - Querying if a bake point node is up to date via the API immediately after changing an upstream node was not always returning the correct value.
ID 437434 -
mari.BakePointNode.exportBakedResult(BakeOutOfDate=True) did not bake out of date nodes prior to exporting.
ID 434031 - The commands
mari.Shelf.removeItem() were able to remove locked shelves and shelf items.
ID 207913 - Mari may crash, or operate with lower than expected performance, when using recent graphics drivers with some AMD cards.
There have been reports that Plays.tv and Raptr, which come bundled with the AMD FirePro drivers, can cause instability in Mari. If you are experiencing instability, please try uninstalling these applications.
ID 16225 / 18457 - Using NVIDIA graphics cards from the Fermi series with drivers older than version 270 results in various rendering issues when the Virtual Texture Type is set to Half or Float.
To resolve this, please download and install the latest graphics driver for your card from the NVIDIA website
ID 9404 / 12567 - Enabling Sync to VBlank in NVIDIA settings can drastically reduce Mari’s performance. If you experience very slow interaction, even with low-polygon models, on one of the Tested Workstation Hardware, navigate to:
• Linux: NVIDIA X Server Settings > X Screen 0 > OpenGL Settings and turn off Sync to VBlank.
• Windows: NVIDIA Control Panel > 3D Settings > Manage 3DSettings > Vertical Sync > Force off
Then, restart Mari.
ID 123514 / 50886 - Imported shaders don't have channels assigned.
ID 113036 / 49131 - High polygon .obj files, exported using the OBJ Exporter plug-in, cannot be read back in to Mari.
ID 57756 / 29386 - When using the Export for Maya script, Maya’s viewport may incorrectly show some patches as transparent. This can be resolved by selecting High Quality Rendering or Viewport 2.0 from the Renderer menu within Maya.
ID 10157 / 16324 - Windows only: You cannot currently import an image into a channel using a relative file path. To work around this, use an absolute path when importing images.
ID 9854 / 14985 - There may be a slight pause after importing textures when creating new projects, while Mari saves the project.
ID 383360 - Using Displacement on Shaders may significantly decrease Canvas frame rate whilst navigating. This can be offset by disabling displacement on individual Shaders, or by globally disallowing the Tesselation Allowed setting found under Preferences > GPU > Shaders.
ID 64924 / 34690 - Flattening or caching layers or channels on complex projects may cause Windows to reset the graphics driver due to the long processing time. To work around this issue, you can try to flatten or cache fewer layers at a time, or reduce the value of the Max Render Size For Baking setting. This setting can be found under Preferences > GPU > Baking and Projection.
Reducing this size breaks the flattening or caching operation up into smaller pieces, which individually take less time to calculate, and thereby avoids a Windows graphics driver reset.
ID 53959 / 26460 - Layers - Painting a mask in a Mask Layer Group sometimes results in unexpected paint results. To prevent this from happening, either:
• Use a white “color” layer at the bottom of your mask stack. Any layer used over this initial “color” layer should then be fine, or
• If you want to create a mask in a Mask Layer Group, simply add another layer on your Mask Layer Group instead, and paint white into it to create a mask.
ID 10046 / 13640 - The Blur tool can be slow to use on the initial stroke. Wait for Mari to process the blur before applying a second stroke.
ID 9567 / 13394 - Using the Select Items tool with the Facing set to Front to select and hide a portion of faces causes some of the faces within the selection to remain visible when zoomed in. To catch all selected faces, either:
• select Facing > Through instead of Front, or
• zoom in closer to the object.
ID 168753 - AIStandard nodes created in Mari3.0v1 are not compatible with Mari 3.0v2, or later. As a workaround, remove the old AIStandard nodes and recreate them in Mari 3.0v2, or later.
ID 126902 / 51462 - Creating a shader and attempting to view it in the Node Graph palette gives the impression that the DiffuseColor input edge is missing from the shader node. The input is present, but is incorrectly hidden. This is related to bug 51263 below
ID 126816 / 51452 - When importing a gizmo, the nodes in the gizmo did not retain their organization if they were created using the item name in the menu.
ID 125961 / 51263 - It is not currently possible to attach the Viewer node to standard Mari shaders, because they are hidden. As a workaround, you can click the View the current channel button above the Node Graph.
ID 125813 / 51247 - Channel transfer doesn't transfer Graph Layers as expected.
ID 124611 / 51082 - The Ambient Occlusion node's properties don't include a generate AO option.
ID 111329 / 48790 - Autoplace does not respect Backdrop nodes.
ID 48970 / 23010 - If Mari crashes when receiving incoming components from Nuke when the Virtual Texture Type is set to Float, lower the Virtual Texture Size to a value below 8192x8192.
ID 17678 / 19780 - A projector created in Ortho view in Mari does not re-project correctly in Nuke.
ID 13600 / 17626 - It can take a long time to import very large or very high polygon count ptex models. The work-around is to assign a small uniform face size (1x1 or 2x2) on import, and then upres the relevant bits of the model as necessary after loading.
ID 13531 / 17618 - Ptex does not bake properly if the resolution of the face is too small. The workaround is to increase the resolution of the selected faces you are having problems with.
ID 424786 - Sufficiently complex shaders would cause OSX graphics drivers to crash on MacOS 10.15 Catalina. Several optimisations to shader compilation and shader compilation triggers have been made to address this, benefiting all platforms, however it is still possible to create a shader complex enough to cause a crash on Catalina. We recommend using bake points and caching to help alleviate this.
ID 64961 / 34729 - Mari displays a rendering error on the canvas when it is unable to create a shader. More information has been included to help you determine the cause of the error. Some solutions might be to hide groups and layers, or to cache parts of your layer stack until a shader can be created
ID 64911 / 34679 - On extremely large projects, issues can arise with shader limits, and reaching the maximum allowed texture slots available. To avoid reaching these shader limits on large projects, try the following workarounds:
• hide groups and layers, or
• cache groups and layers.
ID 360737 - Linux only: When using the Select Color dialog, the colors picked with the eye dropper Pick Screen Pixels option may be incorrect due to an OS driven behaviour of darkening the rest of the Mari application.
To stop this behaviour the following preference can be disabled:
- CentOS 7: Applications > Utilities > Tweak Tool > Windows > Attached Modal Dialogues
This will also disable other desktop manager specific effects.
ID 308268 - Windows only: When working on multiple monitors, palettes sometimes cannot be docked.
ID 200836 - Scrolling in the Brush Editor or Tool Properties palette makes the scratch pad go blank.
ID 194832 - Bake times were significantly increased when baking into channels containing non-linear data.
ID 167883 / 51934 - When a project that contains a Tiled procedural is upgraded from 2.6 to 3.0, the frame rate drops drastically. To avoid this, replace the image in the Tiled procedural once the project has been upgraded.
ID 129292 / 51771 - Removing, changing, or hiding subdivided objects takes a long time.
ID 126389 / 51370 - Heavier projects are initially slower to render when colorspace is enabled.
ID 126164 / 51322 - Modo Render: The preview occasionally fails to update fully.
ID 125437 / 51199 - The AiStandard, RedshiftArchitectural, and VRayMtl shaders are not connected to the Current Channel automatically.
ID 125319 / 51185 - PythonAPI: Mari's Paint node does not appear in typeList(). To add a Paint node Pythonically, call:
ng = mari.geo.current().nodeGraph() ng.createPaintNode(width, height, bitDepth)
ID 124614 / 51084 - Animated objects can take a long time to subdivide.
ID 124233 / 51049 - Texture transfer does not take object transformation into account
ID 123532 / 50898 - Existing subdivision calculations are lost when recalculating, even if recalculation fails.
ID 121276 / 50548 - Modo Render: Only camera moves are respected by live update.
ID 121139 / 50520 - Although faces with degenerate UVs can be loaded into Mari, they can cause issues in some cases. They do not occupy any space in UV, so it's impossible to properly paint on such faces. There is also the risk that some shaders may show undesirable lighting effects on faces with degenerate UVs.
ID 100303 / 46600 - Ambient Occlusion must be updated after any OpenSubdiv calculation.
ID 99115 / 46223 - The Sponge Desaturate mode does not work through the full dynamic range as it uses HSL for desaturation. HSL cannot be used with HDR because HSL works well only in LDR values.
ID 90144 / 43020 - Mac OS X with retina screens only: When a hidden menu is unfurled over the canvas, the canvas zooms in dramatically.
ID 86007 / 41573 - Windows 8 only: The Windows key (Meta key) does not disengage when used in conjunction with a Wacom pen.
ID 75576 / 37140 - Mac OS X only: By default, when you first install Mac OS 10.8 or higher, the security preferences are set so that any applications not downloaded from the Apple App Store can’t be installed.
To ensure that Mari installs correctly, navigate to System Preferences > Security & Privacy on your Mac and select Anywhere for the Allow applications download from field.
ID 62668 / 33293 - Linux: Launching Mari with the language set to one without certain character symbols resulted in Mari failing with an error that the specified transform could not be loaded. To work around this, set the locale (language) to English.
ID 60643 / 31946 - Sometimes paint is not baked because of memory management issues on the graphics card. This can be due to issues such as a high resolution paint buffer, a high bit-depth paint buffer, large virtual texture size, or even a large scale value on the paint buffer transform. These issues can usually be identified by glError: 0x505 out of memory messages in the log. Try reducing any or all of these values to prevent it happening. Graphics drivers are continually improving, so it’s also worth checking whether upgrading your drivers resolves the problem.
ID 45590 / 20510 - If you find that the startup time for Mari is longer than usual, please check that the LIC files in your RLM licensing data folder do not refer to obsolete server ports. If they do, place them in another directory and restart Mari.
ID 37066 / 20021 - Textures in the canvas intermittently switch between lower and higher resolutions. This issue is more likely to occur if your virtual texture resolution is low, and you're working on a complex model with displacement. Possible workarounds include increasing your virtual texture size, reducing the number of channels Mari has to access at once (for example, by reducing the number of channels required for the current shader), to reduce the patch resolution of patches in the channels used in the shader, or to use a smaller canvas window or monitor.
ID 9758 / 14201 - Linux only: Mari becomes unresponsive after the system is woken from sleep.
ID 9631 / 13700 - Adjusting the Camera > Perspective settings for a Projector is not reflected on the canvas until the Projector is made Current.
ID 9363 / 12102 - Current brush settings do not get saved as part of the project. Instead, Mari reverts to the default settings when you close and relaunch it.
ID 9342 / 11874 - Mari doesn’t recognize 3-digit padded .obj sequences as animation
ID 8030 / 13571 - Launching a new version of Mari for the first time, when a config file exists from a previous version, sometimes results in an object not appearing in the Ortho view.
To solve this, close Mari, delete the following config file and relaunch Mari:
• Linux: ~/.config/TheFoundry/Mari.conf
• Windows: C:/Users//.mari/TheFoundry/Mari.ini
ID 7945 / 13294 - Windows: Mari sometimes crashes when trying to load data on large projects due to the program exhausting all window manager objects.
To reconfigure the user object limit:
If this number gets too large, you may also have to modify GDIProcessHandleQuota.
Copyright © 2020 The Foundry Visionmongers Ltd.