mmRegions: A Handly Little Script for Render Region Management

Lately I’ve been seeing several requests on forums for a way to easily ‘save’ coordinates of regions in a 3dsmax scene. mmRegions is a small free script which does just that. It can store the current render region, restore previously saved regions, and even batch render several regions with one button.

All coordinates are saved as percentages, so they scale linearly with the image size. The regions can also be given a descriptive name are are visualized inside the tool. They are saved automatically inside the scene.

To use it:

  • Install the script by dragging mmRegions.mcr into a viewport.
  • Assign it to a toolbar or a keyboard shortcut from the Customize User Interface dialog. It will be found under the Monotone Minimal category.
  • Open the tool.
  • Set a render region as you normally would.
  • Press the Store Region button (first button from the left) to save the coordinates of the region.
  • Press the Restore Region button (third button from the left) to restore the saved region to the current render region of 3dsmax.
  • To batch-render several regions, use the Batch Render button (last button from the left).

UPDATE: Fixed a bug which would cause the Mental Ray VFB controls window to go blank after batch-rendering multiple regions. Thanks to Spacefrog for the report!

UPDATE #2: Updated to v1.1! New features:

  • Preview window now correctly matches render aspect
  • Now works with V-Ray Frame Buffer regions. If the V-Ray VFB region mode is enabled, creating a new region, restoring a region or batch-rendering will affect that instead of the standard 3dsmax render region.
  • Added spinners for editing the dimensions of the currently selected region.
  • Added option to export/import region data. Data can be exported either as plain text, or as Adobe After Effects keyframe data.
  • Added a confirmation window when ‘delete region’ is pressed.

Download mmRegions

15 thoughts on “mmRegions: A Handly Little Script for Render Region Management

  1. hi, i have a question about this script, could it be possible when used to render animations of an object, to add at each region the frames interval ex: from 0 to 50 for the first region, from 51 to 100 for the second region, and so on. It works manualy, but it would be great if it can be batched.

    Rendering in regions can gain you extra time when rendering objects with alpha channel, it keeps the resolution format, but renders inside the region and the rest is automatically matted

  2. Thank you very much for this script !
    Maybe I’m using it wrong but when I run the batch region render, is there a way not to recalculate everything (geometry, instances, maps) between the different regions ? On huge scenes it takes a lot of time. Still its very handy.

    • Thanks for your feedback. Unfortunately, you are using it right :)
      There simply is no API for instructing 3dsmax to render multiple regions in the same render process. That is why several render processed are launched and their results combined.

    • Thanks for your feedback! I can only promise to look into this option next time I get a chance to revisit this script, which may be a while.

  3. Is it possible to run this in backburner or something like RenderPal?

    Would be great to use along side our render farm for high res images!

    • Also i feel this kind of splitting is better than slice rendering and you can resize the regions based on the amount of complex rendering in the image :)

  4. Hi,

    while having the problem to render a larg panorama (rectengular/box) I found your script, tested. Cool!

    But would it be possible to render differnt parts/regions of a view in single picfiles, and batch it? Hope you know what I mean! Thanx a lot, jott

    wrote wron email address first

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>