[ITEM]
03.05.2020

Mari 4

80
Mari 4 Rating: 5,6/10 7073 reviews

87 Followers, 762 Following, 65 Posts - See Instagram photos and videos from @mari4.15.

Release Date

12 June 2018

Mari

System Requirements

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.

Officially Supported Operating Systems

  • Windows 7 64-bit or higher
  • Linux 64-bit operating system (CentOS/RHEL 6)

Minimum Hardware Requirements

  • Quad-core processor
  • 10+GB disk space available for caching and temporary files
  • At least 4GB RAM
  • Display with 1680 x 1050 pixel resolution
  • An NVIDIA or AMD* graphics card with the latest drivers
  • 1GB of graphics memory
  • OpenGL 3.2* or higher

*Displacement preview is currently only available on the cards and drivers that support OpenGL 4.0 or newer.

Recommended System Requirements

  • 2.5+Ghz Quad-core processor
  • 250+GB disk space available for caching and temporary files. SSD is preferable.
  • 16GB RAM with additional virtual memory*
  • Display with 1920 x 1080 pixel resolution
  • An NVIDIA or AMD* graphics card with the latest drivers
  • 2+GB of graphics memory
  • OpenGL 4.4 or higher support

*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.

Tested Hardware

The configurations listed below are those that The Foundry have tested with Mari. Due to the constantly changing nature and wide variety of computer hardware available in the market, The 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.

Tested Workstation Hardware

HP
  • HP XW6600
  • HP Z600
  • HP Z620
  • HP Z640

Tested GPU Hardware

AMD Prosumer Graphics Cards
  • AMD Radeon HD - D500
NVIDIA Prosumer Graphics Cards
  • NVIDIA Geforce GTX 660TI
  • NVIDIA Titan X
  • NVIDIA Geforce GT 650M
  • NVIDIA Geforce GT 675M
NVIDIA Enterprise Graphics Cards
  • NVIDIA Quadro 4000
  • NVIDIA Quadro K4200
  • NVIDIA Quadro K5000
  • NVIDIA Quadro M6000
  • NVIDIA Quadro M6000 24GB

New Features

Simplified Color Picking

Mari now uses a single OCIO color-picking colorspace to define all saved colors and color-picking tool colorspaces. This achieves a 'what you see is what you get' workflow when managing your chosen colors.

Simplified View Transform

The Colorspace toolbar has been refreshed and renamed to the View Transform toolbar. Labels have been replaced with tooltips, controls have been combined, and there is now a visual indicator of the data type being viewed. The Color Manager controls are now hidden when OCIO color management is enabled. See Toolbars.

Perceptually Linear Scalar Display

We have introduced a new scalar monitor colorspace to the View Transform, allowing artists to view scalar data perceptually linear. In a scalar channel a linear ramp will now appear in a similar fashion as other 8-bit based imaging applications, rather than displaying the raw data like Nuke does. The information as used by Mari is still in the expected data format, providing the best results with the most artist-friendly workflow.

Channel Property Indicators

Mari now contains visual indicators in the Channels palette, to define whether a channel contains color or scalar data and to display the channel's bit-depth. This lets you manage channel configurations at a glance. See Channels Palette.

OCIO Colorspace Filter

Mari now contains the OCIO Colorspace filter. This allows you to convert paint target and buffer's colors to another colorspace within the currently loaded OCIO config, without affecting any channel settings. See Filter Functions.

General Color Performance

Mari's colorspace processing has been optimized. This results in faster project load times.

Accelerated Procedural Layer Color Management

The existing GPU accelerated color management system has been extended for paint data to work with procedurals as well.

OCIO Role Driven Project Colorspace Defaults

We have introduced new OCIO role names that Mari will now recognize and use to configure the project's colorspace defaults. For full details of roles and targets, please refer to the Project Settings topic in the Mari reference guide and the Mari Specific OCIO roles in Color Management knowledge based article.

Selection Groups Preserved Between Object Versions

When a new object version is added, Mari now attempts to match selection group's membership across to the new version. This allows you to define selection groups once and have them applied across all subsequent object versions. See Adding and Removing Object Versions.

Non-Active Selection Group Indication

Selection Groups containing selection members that are not present in any active object versions shall now show as grey in the palette.

Feature Enhancements

  • TP 323009 - The Play Controls palette is now the Play Controls toolbar. Color markers have been added to the toolbars timeline to indicate animated texture keyframes.

  • TP 207794 - The Unreal shader now has an Emission input, matching the Emission property of the standard material found in the Unreal Engine.

  • TP 322017 - TP 169673 - The Unreal shader in Mari now closely matches the standard material found in the Unreal Engine.

  • TP 340657 - The Python Console syntax highlighting has been updated with more legible colours.

  • TP 339566 - The Hue, Saturation and Value sliders in the Colors palette have been updated to display ranges dependent on their functionality. Hue, as it is an angle, now displays between 0 and 360°. Saturation and Value as they are percentages display values between 0 and 100, values outside these limits can be manually entered for HDR workflows, but they are not accessible using the slider.

  • TP 349013 - Mari no longer collects Usage Statistics and the related opt in or out Send Statistics preference has been removed from the Mari Preferences dialog, Preferences > Misc .

  • TP 284705 - The Height As Normal adjustment now has a Bump Space option to select a coordinate space to compute normal maps in. The new World option generates a seamless normal map in the world space position.

  • TP 286713 - In the Mari Preferences > Color tab a new Detect Path Colorspace option has been added to disable or enable automatic detection of the colorspace of an image from its filename.

  • TP 316474 - The view transform is no longer switched off when viewing in the context of scalar data, meaning that the Gain and Gamma controls can now be used.

  • TP 337248 - Mari now follows the default behavior for premultiplication within EXR files. Color values have been updated to be unpremultiplied on import and premultiplied on export by their alpha.

  • TP 342360 - A Color/Scalar toggle has been added to procedural color inputs to allow you to set the context in which the color is being used.

  • TP 337028 - The Color Manager palette has been renamed to Color Manager (View Transform).

  • TP 272098 -

    Changing blending mode on layers and the paint buffer no longer requires as many shader recompilations, allowing for a more uninterrupted painting experience.

  • TP 337651 - Blend modes are now cached to reduce the number of shader recompilations in Dynamic mode. For full details of this update, please refer to the following knowledge based article describing Blend Mode caching in Mari 3.4v1 and 4.1v1.

Bug Fixes

  • TP 330089 - The Principled BRDF Clearcoat setting would render as 100% white with input values greater than zero.

  • TP 253208 - Polygonal Marquee selection was crashing Mari when removing points.

  • TP 348129 - When using the Marquee Selection tool, triggering the right-click menu would also create a new selection.

  • TP 228080 - The size of a backdrop node label was too large.

  • TP 342464 - Connecting to an HTTPS URL through the Mari Python API was returning an SSL certificate verification error.

  • TP 270011 - A node's physical properties, such as its color, shape and ports visibility, did not update on project upgrade.

  • TP 271766 - Shader compilation would fail when the same node was a multiply input of a group node.

  • TP 278537 - When creating a new project, the Environment Light was not turned off by default if no environment image was specified.

  • TP 329009 - The trial license dialog incorrectly indicated a 15 day trial period, it has been updated to display the correct 30 day trial period.

  • TP 327560 - Mari did not show node parameter groups in the correct order listed in the node XML files.

  • TP 249620 - Reset Camera function didn't always reset the view correctly.

  • TP 322136 - The Vectors in the Vector Inspector tool were displayed over the Canvas background when the environment light was enabled.

  • TP 311128 - The Principled shader exhibited singularities in the Environment Light IBL.

  • TP 317466 - Anisotropic highlights in the Principled shader showed discontinuities at patch boundaries.

  • TP 318011 - Mari did not clear the Textures Sets palette's Filter Combobox upon hitting Enter key to select a filter.

  • TP 320632 - Resetting to the default layout caused the Export Manager button to disappear.

  • TP 321957 - When Mari's preferences were set to MARI_AUTOUPGRADE_CONFIGURATION=1, for upgrading preferences between alpha, beta and release versions, some preferences were lost on upgrade.

  • TP 322490 - The labels for color values in the Pixel Analyzer were mixed up.

  • TP 322595 - The $COLORSPACE tag was not resolved correctly, in the Export Manager.

  • TP 322748 - In the Filters' dialogs the Curve Editor controls opened in a palette rather than a separate dialog.

  • TP 323003 - The Session Scripts import function used deprecated methods to load images.

  • TP 324250 - Mask stack and Adjustment stack views did not respect the pinned state of parent layer stack view.

  • TP 328713 - The bit depth and filespace information did not display correctly when adding a channel.

  • TP 331178 - The controls exposed in the Advanced Blending menu for Adjustment Merge nodes were incorrect.

  • TP 331194 - Adjusting a curve, in the Curve Editor of the Advanced Blending menu, did not work when accessed via the Layer palette.

  • TP 332805 - The mGo > Materializer dialog did not open.

  • TP 332750 - When a project with multiple OBJs was created, only one mesh had a correct shader selected.

  • TP 337408 - Resetting to the default layout did not retain the state of toolbar group buttons.

  • TP 338938 - User attributes would not display the newline ('n') character correctly.

  • TP 342301 - The Principled BRDF light brightness was too dark compared to the PxrDisney shader in Katana.

  • TP 310065 - The Merge Selection Groups option for FBX files were inconsistently capitalized.

  • TP 329127 - When in pinned mode, Mari did not always open hidden palette's by the palette sidebar after the UI was reset to the Default Layout.

  • TP 324469 - Black or green dots appeared all over the mesh on 387.## NVidia driver series or above.

  • TP 226414 - Upgrading projects from 2.x to 3.x would result in images used by procedural layers and nodes being duplicated in the incorrect colorspace.

  • TP 243213 - Creating new projects was failing with large objects.

  • TP 310270 - Mari's import speed for images is now equivalent to Mari 2.6v5.

  • TP 270481 - Adding a geometry version from an Alembic/FBX file, via the Python API, did not work.

  • TP 322242 - Changing colorspace in project settings after deleting a tab in the Image Manager was crashing Mari.

  • TP 286379 - The Pixel Analyzer was displaying colors incorrectly.

  • TP 309574 - The Slerp tool was crashing Mari when the Up key was held down.

  • TP 311287 - When baking paint the destination texture would become brighter.

  • TP 311560 - Loading a multi-node gizmo was crashing Mari.

  • TP 321095 - Copying, pasting and importing nodes that contained backdrops incorrectly set the selected states of the backdrop nodes and resulted in unexpected behaviour in the Node Graph.

  • TP 166585 / BZ 51890 - Patches > Mirror and Transform operations did not work on paint nodes.

  • TP 175933 - The advanced blend mode curves would not work on a merge node unless they were enabled in the Layers palette.

  • TP 312932 - The tooltip for File > Project Settings > Monitor has been updated to reference the View Transform colorspace rather than the Canvas colorspace.

  • TP 337502 - When importing Channels from a Session Script, the import would fail due to an AttributeError.

  • TP 234930 - When a 'Height as Normal' adjustment layer was added to a procedural cloud layer, a white or black halo would appear around the edge of the model in the viewport.

  • TP 246220 - Mari would freeze when the Tab menu for node or layer creation was triggered during a baking operation.

  • TP 336912 - When exporting a Session Script, remapping patches using GeoEntity.copyChannels() did not copy textures in the correct colorspace.

  • TP 268837 - Images with uppercase file extensions could only be imported through the Image Manager.

  • TP 274327 - Filling faces was not causing connected bake point nodes to become out of date.

  • TP 274340 - Deleting a node in the Node Graph could sometimes caused unselected Backdrop nodes to be deleted if they had been created using copy and paste or imported from a gizmo.

  • TP 275562 - The Brush Editor sometimes caused a crash during projection.

  • TP 279087 - Channels' lock and unlock icons were not updated when toggling between lock and unlock operations.

  • TP 280022 - Some layers, including graph layers, incorrectly displayed a procedural icon.

  • TP 284323 - Flattening a mask stack containing an empty paintable layer caused Mari to crash.

  • TP 312847 - After disabling the compute shaders preference some textures in the canvas would disappear and not render.

  • TP 313810 - Dragging a color swatch would display incorrectly.

  • TP 313854 - Toggling the scalar option of the current channel wasn't updating the view transform.

  • TP 314015 - Switching between two channels with differing colorspaces was causing issues with scalar data.

  • TP 316412 - Opening the Session Scripts export window when a layer stack in the current project contained a layer without any inputs would cause a python error.

  • TP 317867 - Texture transfer was blocked by dialogs that appeared due to Image Sets with missing UDIMs.

  • TP 328708 - The default colorspace, when importing into a channel or layer, wasn't being correctly set to Automatic, but rather to whatever the Channel's colorspace was set to.

  • TP 331333 - When un-projecting a projector, or rendering a turntable, with full lighting enabled, the image would export incorrectly.

  • TP 337377 - The export colorspace was only applied to the first layer in a channel on export.

  • TP 337468 - Importing Channels from a Session Script of an older version of Mari caused importing to error.

  • TP 341769 - Importing Channels with custom blend modes from Session Scripts failed. Importing Channels where one was referenced by the other from Session Scripts made in Mari 3.1 resulted in duplicate Channels being created.

  • TP 342290 - Selecting a UDIM through the patch selection tool was slower than selecting it through the Patches palette.

  • TP 216593 - The mask input on the sphere and cube map projector nodes have been removed as they had no function.

Known Issues

Graphics Cards

  • TP 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.

Importing And Exporting

  • TP 123514 / BZ 50886 - Session Scripts: Imported shaders don't have channels assigned.

  • TP 113036 / BZ 49131 - High polygon .obj files, exported using the OBJ Exporter plug-in, cannot be read back in to Mari.

  • TP 10157 / BZ 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.

  • TP 9854 / BZ 14985 - There may be a slight pause after importing textures when creating new projects, while Mari saves the project.

Layers

  • TP 64924 / BZ 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.

Mari Tools

  • TP 10046 / BZ 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.

  • TP 9567 / BZ 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.

Node Graph

  • TP 126816 / BZ 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.

  • TP 125961 / BZ 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.

  • TP 125813 / BZ 51247 - Channel transfer doesn't transfer Graph Layers as expected.

  • TP 124611 / BZ 51082 - The Ambient Occlusion node's properties don't include a generate AO option.

Nuke<>Mari Bridge

  • TP 48970 / BZ 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.

  • TP 17678 / BZ 19780 - A projector created in Ortho view in Mari does not re-project correctly in Nuke.

Ptex

  • TP 13600 / BZ 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.

  • TP 13531 / BZ 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.

Shaders

  • TP 64961 / BZ 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

Miscellaneous

  • TP 308268 - Windows only: When working on multiple monitors, palettes sometimes cannot be docked.

  • TP 200836 - Scrolling in the Brush Editor or Tool Properties palette makes the scratch pad go blank.

  • TP 129292 / BZ 51771 - Removing, changing, or hiding subdivided objects takes a long time.

  • TP 126164 / BZ 51322 - Modo Render: The preview occasionally fails to update fully.

  • TP 125997 / BZ 51273 - Mac OS X 10.10 and above: Rendering is occasionally incorrect when using multiple lights.

    Computer monitoring software reviews

  • TP 124233 / BZ 51049 - Texture transfer does not take object transformation into account

  • TP 123532 / BZ 50898 - Existing subdivision calculations are lost when recalculating, even if recalculation fails.

  • TP 103296 / BZ 47180 - Mac OS X 10.10 and above: Resizing palettes is restricted to a certain width or height per drag action.

  • TP 100303 / BZ 46600 - Miscellaneous - Ambient Occlusion must be updated after any OpenSubdiv calculation.

  • TP 90144 / BZ 43020 - Mac OS X with retina screens only: When a hidden menu is unfurled over the canvas, the canvas zooms in dramatically.

  • TP 62668 / BZ 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.

  • TP 60643 / BZ 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.

  • TP 37066 / BZ 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.

  • TP 9758 / BZ 14201 - Linux only: Mari becomes unresponsive after the system is woken from sleep.

  • TP 9631 / BZ 13700 - Adjusting the Camera > Perspective settings for a Projector is not reflected on the canvas until the Projector is made Current.

  • TP 9363 / BZ 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.

  • TP 9342 / BZ 11874 - Mari doesn’t recognize 3-digit padded .obj sequences as animation

  • TP 8030 / BZ 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

Developer Notes

These are the changes relevant to developers.

New Features

  • TP 286539 - A new argument for specifying colorspace settings has been added to the following Python methods:

    • mari.LayerStack.importImages
    • mari.ImageSet.importImages
    • mari.ImageSet.importImagesFromDict
    • mari.PaintableLayer.importImages
  • TP 266897 - PySide2.QtHelp module can now be imported and used in Mari Python scripts.

Feature Enhancements

  • TP 327823 - The Node's bake() method now respects colorspace and filespace arguments.

  • TP 343565 - The Python MenuManager API has been extended to allow access to nested submenus.

  • TP 328026 - The new createChannel method is added to the Python NodeGraph class.

  • TP 285076 - Mari can now pythonically remap existing patches to new patches that were not used in a previous session.

  • TP 307980 - The Paint node and BakePoint node now contain API methods to access and set their file-space, bleed property, size, depth and how they are managed. They also now emit signals when those properties are changed.

  • TP 337267 - Mari now declares cubemapToken as the unified samplerCube type for use of custom GLSL function that takes in samplerCube argument for texture look up. Also mriTexture() and mriTextureLod() calls can be used to look up the texture using cubemapToken. For full details of this update, please refer to the knowledge based article describing How to create a RAW texture lookup call in custom GLSL by passing in a texture.

  • TP 344073 - Specific custom GLSL shaders were failing, due to the texture token type change from uvec2 to uvec4. A new MARI_VERSION shader define has been added to allow sharing custom shader code between Mari 3.4 and 4.1 and older versions. For full details of the new define method, please refer to the following knowledge based article which describes the MARI_VERSION updates for shader writers and development.

Bug Fixes

  • TP 351176 - Mari now properly disconnects a node via Python API Node.setInputNode() function.

  • TP 341978 - When creating a project using the Python API the initial layer generated did not contain an alpha channel.

  • TP 346314 - Pythonically querying the colorspace config got progressively slower each time the command was triggered.

  • TP 96008 / BZ 44770 - The Python API function mari.app.isProcessing caused Mari to hang if called in a callback of function mari.app.endingProcessing.

  • TP 101460 / BZ 46910 - Python channelAdded signal was emitted before a channel had colorspace settings properly initialized.

  • TP 313083 - The Python API was emitting too many deprecated warnings and it was difficult to evaluate the source of the warnings.

  • TP 279776 - Removing shortcuts, via the Python API, had no effect.

  • TP 268297 - A convert dialog was appearing asking for confirmation to upgrade, when loading a project from the Python console.

  • TP 306236 - A layer created using the Python API displayed a difference in colorspace settings, depending on whether or not it was created within a layer group.

Copyright © 2018 The Foundry Visionmongers Ltd.


Foundry has released Mari 4.6, the latest update to its 3D texture painting software.

The release extends Mari’s new procedural material system, adding a system of Geo-Channels for geometry-based maps, adds new V-Ray and 3Delight shaders, and overhauls workflow in Mari’s node graph.

New Geo-Channels system functions like Smart Masks
Mari 4.6 extends the new procedural material system introduced in Mari 4.5, intended for roughing out the look of an asset, or creating simpler final-quality shading set-ups.

One key change is a new system of Geo-Channels: slots for storing texture maps baked from mesh geometry, like ambient occlusion and curvature maps.

Geo-Channels can be embedded into material presets to generate effects like edge wear and surface dirt, in a similar way to using Smart Materials in Substance Painter.

Mari’s own Bake Point node can be set to output to multiple Geo-Channels, making it possible to generate geometry maps from a Mari node graph and sync them across an entire project, even within nested groups.

More node types for authoring procedural materials
The release also adds a number of new node types for creating procedural materials, including new camera projection nodes for placing decals onto models, or for use in photogrammetry workflows.

There are also new nodes for generating fractal patterns like marble and Voronoi effects or man-made patterns like bricks and weave structures; and a range of new mathematical operators.

In addition, the Material Ingest Tool, intended to streamline the process of importing sets of PBR texture maps and creating materials from them, has been updated.

New features include the option to use custom material templates; and to display results in a table when searching for texture sets, showing which of the constituent texture maps have been found.

MPC lead texture artist and Mari beta tester Peter Aversten has posted a good analysis of the impact that the new features will have on materials workflows, which you can read on his website.

New V-Ray and 3Delight shaders for more accurate look dev
Mari 4.6 also introduces two new renderer-specific shaders, V-Ray’s VRayMtl and the 3Delight Principled shader, to complement the Arnold Standard Surface Shader added in version 4.5.

All are intended to enable Mari to more accurately represent the way that materials will look in a final render, reducing the need to round-trip assets between software during look development.

Pixar also shipped its own RenderMan shader earlier this year.

Updated: This story originally stated that an equivalent Redshift shader is in development.

Foundry has now contacted us to say that while “Redshift are supportive of working with us on integrating their shader … it’s not a priority for the immediate future”.

Less ‘deranged’ auto-layout system in the node graph
The release also improves workflow in Mari’s node graph, rationalising what product manager Rory Woodford memorably describes in this Siggraph 2019 talk as the “previously deranged auto node layout logic”.

Nodes should now be laid out with a more conventional evenly spaced left-to-right flow, and all nodes can now be partially or fully collapsed, helping to reduce visual clutter in the node graph.

Mac version of Mari 4.x still in development
One thing that Mari 4.6 does not have is a Mac edition: something common to all of the 4.x releases, due to difficulties updating to the Qt5 interface libraries used in the Windows and Linux versions.

Speaking to CG Channel just before Siggraph earlier this year, Foundry described macOS as a “niche” in its user base, but confirmed that a release was still planned, despite the near-two-year gap since Mari 4.0.

The Mac edition will be based on OpenGL, rather than Apple’s own Metal graphics API.

Pricing and availability
Mari 4.6 available for Windows 7+ and CentOS/RHEL 6+ Linux. Both node-locked and floating licences cost $2,068. Rental starts at $59/month or $599/year.


Read an overview of the new features in Mari 4.6 on the product website

Related posts:

Tags: 3Delight, ambient occlusion, AO, Arnold, Bake Point node, baking, channels, curvature map, edge wear, Foundry, Geo-Channels, geometry map, layers, look dev, look development, macOS, Mari, Mari 4.6, Material Ingest Tool, material system, materials, MMA, new features, node graph, PBR, price, Principled BRDF, Redshift, RenderMan, shading, smart mask, Standard Surface shader, system requirements, V-Ray, VRayMtl

[/ITEM]
[/MAIN]
03.05.2020

Mari 4

33
Mari 4 Rating: 5,6/10 7073 reviews

87 Followers, 762 Following, 65 Posts - See Instagram photos and videos from @mari4.15.

Release Date

12 June 2018

Mari

System Requirements

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.

Officially Supported Operating Systems

  • Windows 7 64-bit or higher
  • Linux 64-bit operating system (CentOS/RHEL 6)

Minimum Hardware Requirements

  • Quad-core processor
  • 10+GB disk space available for caching and temporary files
  • At least 4GB RAM
  • Display with 1680 x 1050 pixel resolution
  • An NVIDIA or AMD* graphics card with the latest drivers
  • 1GB of graphics memory
  • OpenGL 3.2* or higher

*Displacement preview is currently only available on the cards and drivers that support OpenGL 4.0 or newer.

Recommended System Requirements

  • 2.5+Ghz Quad-core processor
  • 250+GB disk space available for caching and temporary files. SSD is preferable.
  • 16GB RAM with additional virtual memory*
  • Display with 1920 x 1080 pixel resolution
  • An NVIDIA or AMD* graphics card with the latest drivers
  • 2+GB of graphics memory
  • OpenGL 4.4 or higher support

*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.

Tested Hardware

The configurations listed below are those that The Foundry have tested with Mari. Due to the constantly changing nature and wide variety of computer hardware available in the market, The 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.

Tested Workstation Hardware

HP
  • HP XW6600
  • HP Z600
  • HP Z620
  • HP Z640

Tested GPU Hardware

AMD Prosumer Graphics Cards
  • AMD Radeon HD - D500
NVIDIA Prosumer Graphics Cards
  • NVIDIA Geforce GTX 660TI
  • NVIDIA Titan X
  • NVIDIA Geforce GT 650M
  • NVIDIA Geforce GT 675M
NVIDIA Enterprise Graphics Cards
  • NVIDIA Quadro 4000
  • NVIDIA Quadro K4200
  • NVIDIA Quadro K5000
  • NVIDIA Quadro M6000
  • NVIDIA Quadro M6000 24GB

New Features

Simplified Color Picking

Mari now uses a single OCIO color-picking colorspace to define all saved colors and color-picking tool colorspaces. This achieves a 'what you see is what you get' workflow when managing your chosen colors.

Simplified View Transform

The Colorspace toolbar has been refreshed and renamed to the View Transform toolbar. Labels have been replaced with tooltips, controls have been combined, and there is now a visual indicator of the data type being viewed. The Color Manager controls are now hidden when OCIO color management is enabled. See Toolbars.

Perceptually Linear Scalar Display

We have introduced a new scalar monitor colorspace to the View Transform, allowing artists to view scalar data perceptually linear. In a scalar channel a linear ramp will now appear in a similar fashion as other 8-bit based imaging applications, rather than displaying the raw data like Nuke does. The information as used by Mari is still in the expected data format, providing the best results with the most artist-friendly workflow.

Channel Property Indicators

Mari now contains visual indicators in the Channels palette, to define whether a channel contains color or scalar data and to display the channel's bit-depth. This lets you manage channel configurations at a glance. See Channels Palette.

OCIO Colorspace Filter

Mari now contains the OCIO Colorspace filter. This allows you to convert paint target and buffer's colors to another colorspace within the currently loaded OCIO config, without affecting any channel settings. See Filter Functions.

General Color Performance

Mari's colorspace processing has been optimized. This results in faster project load times.

Accelerated Procedural Layer Color Management

The existing GPU accelerated color management system has been extended for paint data to work with procedurals as well.

OCIO Role Driven Project Colorspace Defaults

We have introduced new OCIO role names that Mari will now recognize and use to configure the project's colorspace defaults. For full details of roles and targets, please refer to the Project Settings topic in the Mari reference guide and the Mari Specific OCIO roles in Color Management knowledge based article.

Selection Groups Preserved Between Object Versions

When a new object version is added, Mari now attempts to match selection group's membership across to the new version. This allows you to define selection groups once and have them applied across all subsequent object versions. See Adding and Removing Object Versions.

Non-Active Selection Group Indication

Selection Groups containing selection members that are not present in any active object versions shall now show as grey in the palette.

Feature Enhancements

  • TP 323009 - The Play Controls palette is now the Play Controls toolbar. Color markers have been added to the toolbars timeline to indicate animated texture keyframes.

  • TP 207794 - The Unreal shader now has an Emission input, matching the Emission property of the standard material found in the Unreal Engine.

  • TP 322017 - TP 169673 - The Unreal shader in Mari now closely matches the standard material found in the Unreal Engine.

  • TP 340657 - The Python Console syntax highlighting has been updated with more legible colours.

  • TP 339566 - The Hue, Saturation and Value sliders in the Colors palette have been updated to display ranges dependent on their functionality. Hue, as it is an angle, now displays between 0 and 360°. Saturation and Value as they are percentages display values between 0 and 100, values outside these limits can be manually entered for HDR workflows, but they are not accessible using the slider.

  • TP 349013 - Mari no longer collects Usage Statistics and the related opt in or out Send Statistics preference has been removed from the Mari Preferences dialog, Preferences > Misc .

  • TP 284705 - The Height As Normal adjustment now has a Bump Space option to select a coordinate space to compute normal maps in. The new World option generates a seamless normal map in the world space position.

  • TP 286713 - In the Mari Preferences > Color tab a new Detect Path Colorspace option has been added to disable or enable automatic detection of the colorspace of an image from its filename.

  • TP 316474 - The view transform is no longer switched off when viewing in the context of scalar data, meaning that the Gain and Gamma controls can now be used.

  • TP 337248 - Mari now follows the default behavior for premultiplication within EXR files. Color values have been updated to be unpremultiplied on import and premultiplied on export by their alpha.

  • TP 342360 - A Color/Scalar toggle has been added to procedural color inputs to allow you to set the context in which the color is being used.

  • TP 337028 - The Color Manager palette has been renamed to Color Manager (View Transform).

  • TP 272098 -

    Changing blending mode on layers and the paint buffer no longer requires as many shader recompilations, allowing for a more uninterrupted painting experience.

  • TP 337651 - Blend modes are now cached to reduce the number of shader recompilations in Dynamic mode. For full details of this update, please refer to the following knowledge based article describing Blend Mode caching in Mari 3.4v1 and 4.1v1.

Bug Fixes

  • TP 330089 - The Principled BRDF Clearcoat setting would render as 100% white with input values greater than zero.

  • TP 253208 - Polygonal Marquee selection was crashing Mari when removing points.

  • TP 348129 - When using the Marquee Selection tool, triggering the right-click menu would also create a new selection.

  • TP 228080 - The size of a backdrop node label was too large.

  • TP 342464 - Connecting to an HTTPS URL through the Mari Python API was returning an SSL certificate verification error.

  • TP 270011 - A node's physical properties, such as its color, shape and ports visibility, did not update on project upgrade.

  • TP 271766 - Shader compilation would fail when the same node was a multiply input of a group node.

  • TP 278537 - When creating a new project, the Environment Light was not turned off by default if no environment image was specified.

  • TP 329009 - The trial license dialog incorrectly indicated a 15 day trial period, it has been updated to display the correct 30 day trial period.

  • TP 327560 - Mari did not show node parameter groups in the correct order listed in the node XML files.

  • TP 249620 - Reset Camera function didn't always reset the view correctly.

  • TP 322136 - The Vectors in the Vector Inspector tool were displayed over the Canvas background when the environment light was enabled.

  • TP 311128 - The Principled shader exhibited singularities in the Environment Light IBL.

  • TP 317466 - Anisotropic highlights in the Principled shader showed discontinuities at patch boundaries.

  • TP 318011 - Mari did not clear the Textures Sets palette's Filter Combobox upon hitting Enter key to select a filter.

  • TP 320632 - Resetting to the default layout caused the Export Manager button to disappear.

  • TP 321957 - When Mari's preferences were set to MARI_AUTOUPGRADE_CONFIGURATION=1, for upgrading preferences between alpha, beta and release versions, some preferences were lost on upgrade.

  • TP 322490 - The labels for color values in the Pixel Analyzer were mixed up.

  • TP 322595 - The $COLORSPACE tag was not resolved correctly, in the Export Manager.

  • TP 322748 - In the Filters' dialogs the Curve Editor controls opened in a palette rather than a separate dialog.

  • TP 323003 - The Session Scripts import function used deprecated methods to load images.

  • TP 324250 - Mask stack and Adjustment stack views did not respect the pinned state of parent layer stack view.

  • TP 328713 - The bit depth and filespace information did not display correctly when adding a channel.

  • TP 331178 - The controls exposed in the Advanced Blending menu for Adjustment Merge nodes were incorrect.

  • TP 331194 - Adjusting a curve, in the Curve Editor of the Advanced Blending menu, did not work when accessed via the Layer palette.

  • TP 332805 - The mGo > Materializer dialog did not open.

  • TP 332750 - When a project with multiple OBJs was created, only one mesh had a correct shader selected.

  • TP 337408 - Resetting to the default layout did not retain the state of toolbar group buttons.

  • TP 338938 - User attributes would not display the newline ('n') character correctly.

  • TP 342301 - The Principled BRDF light brightness was too dark compared to the PxrDisney shader in Katana.

  • TP 310065 - The Merge Selection Groups option for FBX files were inconsistently capitalized.

  • TP 329127 - When in pinned mode, Mari did not always open hidden palette's by the palette sidebar after the UI was reset to the Default Layout.

  • TP 324469 - Black or green dots appeared all over the mesh on 387.## NVidia driver series or above.

  • TP 226414 - Upgrading projects from 2.x to 3.x would result in images used by procedural layers and nodes being duplicated in the incorrect colorspace.

  • TP 243213 - Creating new projects was failing with large objects.

  • TP 310270 - Mari's import speed for images is now equivalent to Mari 2.6v5.

  • TP 270481 - Adding a geometry version from an Alembic/FBX file, via the Python API, did not work.

  • TP 322242 - Changing colorspace in project settings after deleting a tab in the Image Manager was crashing Mari.

  • TP 286379 - The Pixel Analyzer was displaying colors incorrectly.

  • TP 309574 - The Slerp tool was crashing Mari when the Up key was held down.

  • TP 311287 - When baking paint the destination texture would become brighter.

  • TP 311560 - Loading a multi-node gizmo was crashing Mari.

  • TP 321095 - Copying, pasting and importing nodes that contained backdrops incorrectly set the selected states of the backdrop nodes and resulted in unexpected behaviour in the Node Graph.

  • TP 166585 / BZ 51890 - Patches > Mirror and Transform operations did not work on paint nodes.

  • TP 175933 - The advanced blend mode curves would not work on a merge node unless they were enabled in the Layers palette.

  • TP 312932 - The tooltip for File > Project Settings > Monitor has been updated to reference the View Transform colorspace rather than the Canvas colorspace.

  • TP 337502 - When importing Channels from a Session Script, the import would fail due to an AttributeError.

  • TP 234930 - When a 'Height as Normal' adjustment layer was added to a procedural cloud layer, a white or black halo would appear around the edge of the model in the viewport.

  • TP 246220 - Mari would freeze when the Tab menu for node or layer creation was triggered during a baking operation.

  • TP 336912 - When exporting a Session Script, remapping patches using GeoEntity.copyChannels() did not copy textures in the correct colorspace.

  • TP 268837 - Images with uppercase file extensions could only be imported through the Image Manager.

  • TP 274327 - Filling faces was not causing connected bake point nodes to become out of date.

  • TP 274340 - Deleting a node in the Node Graph could sometimes caused unselected Backdrop nodes to be deleted if they had been created using copy and paste or imported from a gizmo.

  • TP 275562 - The Brush Editor sometimes caused a crash during projection.

  • TP 279087 - Channels' lock and unlock icons were not updated when toggling between lock and unlock operations.

  • TP 280022 - Some layers, including graph layers, incorrectly displayed a procedural icon.

  • TP 284323 - Flattening a mask stack containing an empty paintable layer caused Mari to crash.

  • TP 312847 - After disabling the compute shaders preference some textures in the canvas would disappear and not render.

  • TP 313810 - Dragging a color swatch would display incorrectly.

  • TP 313854 - Toggling the scalar option of the current channel wasn't updating the view transform.

  • TP 314015 - Switching between two channels with differing colorspaces was causing issues with scalar data.

  • TP 316412 - Opening the Session Scripts export window when a layer stack in the current project contained a layer without any inputs would cause a python error.

  • TP 317867 - Texture transfer was blocked by dialogs that appeared due to Image Sets with missing UDIMs.

  • TP 328708 - The default colorspace, when importing into a channel or layer, wasn't being correctly set to Automatic, but rather to whatever the Channel's colorspace was set to.

  • TP 331333 - When un-projecting a projector, or rendering a turntable, with full lighting enabled, the image would export incorrectly.

  • TP 337377 - The export colorspace was only applied to the first layer in a channel on export.

  • TP 337468 - Importing Channels from a Session Script of an older version of Mari caused importing to error.

  • TP 341769 - Importing Channels with custom blend modes from Session Scripts failed. Importing Channels where one was referenced by the other from Session Scripts made in Mari 3.1 resulted in duplicate Channels being created.

  • TP 342290 - Selecting a UDIM through the patch selection tool was slower than selecting it through the Patches palette.

  • TP 216593 - The mask input on the sphere and cube map projector nodes have been removed as they had no function.

Known Issues

Graphics Cards

  • TP 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.

Importing And Exporting

  • TP 123514 / BZ 50886 - Session Scripts: Imported shaders don't have channels assigned.

  • TP 113036 / BZ 49131 - High polygon .obj files, exported using the OBJ Exporter plug-in, cannot be read back in to Mari.

  • TP 10157 / BZ 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.

  • TP 9854 / BZ 14985 - There may be a slight pause after importing textures when creating new projects, while Mari saves the project.

Layers

  • TP 64924 / BZ 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.

Mari Tools

  • TP 10046 / BZ 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.

  • TP 9567 / BZ 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.

Node Graph

  • TP 126816 / BZ 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.

  • TP 125961 / BZ 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.

  • TP 125813 / BZ 51247 - Channel transfer doesn't transfer Graph Layers as expected.

  • TP 124611 / BZ 51082 - The Ambient Occlusion node's properties don't include a generate AO option.

Nuke<>Mari Bridge

  • TP 48970 / BZ 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.

  • TP 17678 / BZ 19780 - A projector created in Ortho view in Mari does not re-project correctly in Nuke.

Ptex

  • TP 13600 / BZ 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.

  • TP 13531 / BZ 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.

Shaders

  • TP 64961 / BZ 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

Miscellaneous

  • TP 308268 - Windows only: When working on multiple monitors, palettes sometimes cannot be docked.

  • TP 200836 - Scrolling in the Brush Editor or Tool Properties palette makes the scratch pad go blank.

  • TP 129292 / BZ 51771 - Removing, changing, or hiding subdivided objects takes a long time.

  • TP 126164 / BZ 51322 - Modo Render: The preview occasionally fails to update fully.

  • TP 125997 / BZ 51273 - Mac OS X 10.10 and above: Rendering is occasionally incorrect when using multiple lights.

    Computer monitoring software reviews

  • TP 124233 / BZ 51049 - Texture transfer does not take object transformation into account

  • TP 123532 / BZ 50898 - Existing subdivision calculations are lost when recalculating, even if recalculation fails.

  • TP 103296 / BZ 47180 - Mac OS X 10.10 and above: Resizing palettes is restricted to a certain width or height per drag action.

  • TP 100303 / BZ 46600 - Miscellaneous - Ambient Occlusion must be updated after any OpenSubdiv calculation.

  • TP 90144 / BZ 43020 - Mac OS X with retina screens only: When a hidden menu is unfurled over the canvas, the canvas zooms in dramatically.

  • TP 62668 / BZ 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.

  • TP 60643 / BZ 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.

  • TP 37066 / BZ 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.

  • TP 9758 / BZ 14201 - Linux only: Mari becomes unresponsive after the system is woken from sleep.

  • TP 9631 / BZ 13700 - Adjusting the Camera > Perspective settings for a Projector is not reflected on the canvas until the Projector is made Current.

  • TP 9363 / BZ 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.

  • TP 9342 / BZ 11874 - Mari doesn’t recognize 3-digit padded .obj sequences as animation

  • TP 8030 / BZ 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

Developer Notes

These are the changes relevant to developers.

New Features

  • TP 286539 - A new argument for specifying colorspace settings has been added to the following Python methods:

    • mari.LayerStack.importImages
    • mari.ImageSet.importImages
    • mari.ImageSet.importImagesFromDict
    • mari.PaintableLayer.importImages
  • TP 266897 - PySide2.QtHelp module can now be imported and used in Mari Python scripts.

Feature Enhancements

  • TP 327823 - The Node's bake() method now respects colorspace and filespace arguments.

  • TP 343565 - The Python MenuManager API has been extended to allow access to nested submenus.

  • TP 328026 - The new createChannel method is added to the Python NodeGraph class.

  • TP 285076 - Mari can now pythonically remap existing patches to new patches that were not used in a previous session.

  • TP 307980 - The Paint node and BakePoint node now contain API methods to access and set their file-space, bleed property, size, depth and how they are managed. They also now emit signals when those properties are changed.

  • TP 337267 - Mari now declares cubemapToken as the unified samplerCube type for use of custom GLSL function that takes in samplerCube argument for texture look up. Also mriTexture() and mriTextureLod() calls can be used to look up the texture using cubemapToken. For full details of this update, please refer to the knowledge based article describing How to create a RAW texture lookup call in custom GLSL by passing in a texture.

  • TP 344073 - Specific custom GLSL shaders were failing, due to the texture token type change from uvec2 to uvec4. A new MARI_VERSION shader define has been added to allow sharing custom shader code between Mari 3.4 and 4.1 and older versions. For full details of the new define method, please refer to the following knowledge based article which describes the MARI_VERSION updates for shader writers and development.

Bug Fixes

  • TP 351176 - Mari now properly disconnects a node via Python API Node.setInputNode() function.

  • TP 341978 - When creating a project using the Python API the initial layer generated did not contain an alpha channel.

  • TP 346314 - Pythonically querying the colorspace config got progressively slower each time the command was triggered.

  • TP 96008 / BZ 44770 - The Python API function mari.app.isProcessing caused Mari to hang if called in a callback of function mari.app.endingProcessing.

  • TP 101460 / BZ 46910 - Python channelAdded signal was emitted before a channel had colorspace settings properly initialized.

  • TP 313083 - The Python API was emitting too many deprecated warnings and it was difficult to evaluate the source of the warnings.

  • TP 279776 - Removing shortcuts, via the Python API, had no effect.

  • TP 268297 - A convert dialog was appearing asking for confirmation to upgrade, when loading a project from the Python console.

  • TP 306236 - A layer created using the Python API displayed a difference in colorspace settings, depending on whether or not it was created within a layer group.

Copyright © 2018 The Foundry Visionmongers Ltd.


Foundry has released Mari 4.6, the latest update to its 3D texture painting software.

The release extends Mari’s new procedural material system, adding a system of Geo-Channels for geometry-based maps, adds new V-Ray and 3Delight shaders, and overhauls workflow in Mari’s node graph.

New Geo-Channels system functions like Smart Masks
Mari 4.6 extends the new procedural material system introduced in Mari 4.5, intended for roughing out the look of an asset, or creating simpler final-quality shading set-ups.

One key change is a new system of Geo-Channels: slots for storing texture maps baked from mesh geometry, like ambient occlusion and curvature maps.

Geo-Channels can be embedded into material presets to generate effects like edge wear and surface dirt, in a similar way to using Smart Materials in Substance Painter.

Mari’s own Bake Point node can be set to output to multiple Geo-Channels, making it possible to generate geometry maps from a Mari node graph and sync them across an entire project, even within nested groups.

More node types for authoring procedural materials
The release also adds a number of new node types for creating procedural materials, including new camera projection nodes for placing decals onto models, or for use in photogrammetry workflows.

There are also new nodes for generating fractal patterns like marble and Voronoi effects or man-made patterns like bricks and weave structures; and a range of new mathematical operators.

In addition, the Material Ingest Tool, intended to streamline the process of importing sets of PBR texture maps and creating materials from them, has been updated.

New features include the option to use custom material templates; and to display results in a table when searching for texture sets, showing which of the constituent texture maps have been found.

MPC lead texture artist and Mari beta tester Peter Aversten has posted a good analysis of the impact that the new features will have on materials workflows, which you can read on his website.

New V-Ray and 3Delight shaders for more accurate look dev
Mari 4.6 also introduces two new renderer-specific shaders, V-Ray’s VRayMtl and the 3Delight Principled shader, to complement the Arnold Standard Surface Shader added in version 4.5.

All are intended to enable Mari to more accurately represent the way that materials will look in a final render, reducing the need to round-trip assets between software during look development.

Pixar also shipped its own RenderMan shader earlier this year.

Updated: This story originally stated that an equivalent Redshift shader is in development.

Foundry has now contacted us to say that while “Redshift are supportive of working with us on integrating their shader … it’s not a priority for the immediate future”.

Less ‘deranged’ auto-layout system in the node graph
The release also improves workflow in Mari’s node graph, rationalising what product manager Rory Woodford memorably describes in this Siggraph 2019 talk as the “previously deranged auto node layout logic”.

Nodes should now be laid out with a more conventional evenly spaced left-to-right flow, and all nodes can now be partially or fully collapsed, helping to reduce visual clutter in the node graph.

Mac version of Mari 4.x still in development
One thing that Mari 4.6 does not have is a Mac edition: something common to all of the 4.x releases, due to difficulties updating to the Qt5 interface libraries used in the Windows and Linux versions.

Speaking to CG Channel just before Siggraph earlier this year, Foundry described macOS as a “niche” in its user base, but confirmed that a release was still planned, despite the near-two-year gap since Mari 4.0.

The Mac edition will be based on OpenGL, rather than Apple’s own Metal graphics API.

Pricing and availability
Mari 4.6 available for Windows 7+ and CentOS/RHEL 6+ Linux. Both node-locked and floating licences cost $2,068. Rental starts at $59/month or $599/year.


Read an overview of the new features in Mari 4.6 on the product website

Related posts:

Tags: 3Delight, ambient occlusion, AO, Arnold, Bake Point node, baking, channels, curvature map, edge wear, Foundry, Geo-Channels, geometry map, layers, look dev, look development, macOS, Mari, Mari 4.6, Material Ingest Tool, material system, materials, MMA, new features, node graph, PBR, price, Principled BRDF, Redshift, RenderMan, shading, smart mask, Standard Surface shader, system requirements, V-Ray, VRayMtl