Creative briefs are becoming more and more demanding, and with increasing complexity in geometry, texture maps need to be increasingly higher in resolution.
With this in mind it is very important to try and squeeze out as much performance as possible from your machine to allow as fluid as possible a painting process when using Mari.
There are many things you can do in order to achieve this, and this article will go through each Mari feature you can use, step by step.
Mip-Mapping Generation - "Fast"
No linearization is performed and the down sampling is done in the native colorspace of the image.
This speeds up the process of things like baking paint down from the buffer to the canvas, but can intorduce errors due to the maths being non-inear
Depth Projection - "Allow Depth Projection" - DISABLED
Depth project can be used to make more accurate shadows in a real time application, disabling it will free up system resources.
Virtual Texture Depth
Avoid using raw procedural nodes, they require a lot of system memory in order to calculate and render them given their high level of complexity. Wherever possible cache them to increase performance.
Caching layers: A large number of layers, or computationally expensive layers can decrease performance. Caching these layers can mitigate this. To cache layers, from the Layers menu select Caching > Cache Layers or right-click on the layer and select Caching > Cache Layers from the dropdown menu.
Multiple shader setups: Have multiple shader setups and switch between them.
Bump Maps: Avoid having bump map on while painting, if you need it cache the bump map channel.
Avoiding having too large a viewport: The more pixels to render, the slower the FPS will be. In extreme cases hiding certain pieces of geometry might improve framerate.