Animated Render Border
Animated Render Border
An adaptive render region that updates every frame to automatically surround the selected object or collection.
Key Features:
- Animates the render region to automatically surround the selected objects or collections of objects during an animation.
- Allows manually keyframing the render region for precise animation.
- Adjustable ‘margin’ property to give ‘padding’ around tracked objects.
- Track objects using precise tracking or a faster, but less precise bounding box tracking mode.
What does ‘Animated Render Border’ do?
Blender has an inbuilt feature that allows you to draw a box around the areas you want to render (while looking through the camera) and skip the rendering of areas outside this box. This is called 'region' rendering (previously this was called 'border' rendering) and it’s great for previewing parts of your render. It works well for still frames but not so much for animations where your object of interest is moving all over the screen.
This add-on makes the ‘render region’ adaptive so that the region updates its location and size every frame to always surround the selected object or collection of objects*, focusing your render power on just those specific parts of the image. You can scroll in the timeline to see the region update automatically and render when ready.
There is also a ‘Keyframe’ mode, to allow you to manually place and keyframe the position of the render region instead of tracking an object or collection.
*Tracking is enabled for the following object types: Meshes, Text (Font) objects, Curves, Surfaces, Meta objects, Lattices and Armatures.
How can it help you?
If you’re doing test renders and want to preview the render of an animated object but don't want to waste processing time on background objects you can use the ‘Animated Border Render’ to focus the rendering on the selected object(s).
If the image you are rendering has a transparent background (a common occurrence for those doing compositing) and you want to skip rendering the transparent areas (which, despite being empty still take time to process) you can again, select an object or collection to track and the Animated Render Border add-on will handle the rest.
How does it work?
The add-on looks at the bounding box of the object(s) selected to be tracked and will adjust the render region accordingly. Alternatively, objects can be tracked by analysing the ‘inner points’ of the object (vertices, lattice points, curve points etc.), which can be slower with complex objects, but very precise.
You can also always use the ‘margin’ feature of the add-on to make sure you’ve always got a ‘safe’ area around your tracked objects.
Why did I make this?
I was rendering an animation and noticed that apart from the object I was rendering, a lot of the frame had a transparent background. Despite the fact these areas were blank, the renderer was still taking some time to process these areas. It was infuriating to watch the renderer spend time on these blank areas and not focus on the important areas. I knew these areas were blank but Blender didn’t! I knew Blender’s render region could skip areas on single frames, but I also knew that wouldn’t work on animations where the object is moving. The thought of faster renders was all the motivation I needed to start scripting.
What versions of Blender does it support?
Originally the add-on was built for Blender 2.74 (which was then updated to be compatible with 2.79), but I have now updated it to work with 2.8 and newer. Both the 2.79 and 2.8+ version of the add-on are included with the purchase. Currently there is no difference in features between the two.
Limitations
Unfortunately, despite my best efforts, there are some limitations to the add-on:
- Only image formats can be chosen as an output for rendering. So, for example, you can render to a JPG image sequence, but not an MP4 video.
- Cameras, Empties, Lights, Instances (including instanced Collections), Particle Systems, and Speaker objects cannot be tracked (but you could parent an object that can be tracked to an object that can’t and track that instead).
- You can’t have a different size Render Region for different View Layers (Render Layers in 2.79). This is only possible if you render out your View Layers separately.
- Tracking won’t work when a camera has been set to use a ‘Panoramic’ lens type (e.g. Equirectangular, Mirror Ball etc.)
- The Render Region does not work reliably with the compositor. It is advised to render out each pass (individually or as a Multilayer EXR) and use those renders in the compositor.
Release Log:
V3.0
- Updated add-on to work with Blender 2.80 and later.
- Removed the ability to render when a video format is selected in the Output panel (this was a mistake and resulted in multiple video files being created instead of a single output file).
- Other minor bug fixes.
V2.1
- Fixed an issue where rendering from the command line would fail due to the modal operator not working in 'background' (-b) mode.
V2.0
- Renders can now be properly cancelled.
- Text (Font) objects, Curves, Surfaces, Meta objects, Lattices and Armatures can now be tracked, in addition to Mesh objects.
- The render border can now be manually keyframed instead of tracking an object.
V1.1
- Fixed bug that meant rendering an animation happened on wrong start frame.