Oversize Render
OversizeRender
OversizeRender is a MAXScript tool for 3ds Max designed to help users easily set up and manage "oversize" or "over-scan" rendering. This technique involves rendering an image larger than the final intended dimensions, providing extra pixels around the edges. This is commonly used for:
- Post-production stabilization: Extra image area allows for camera shake to be smoothed out without losing frame edges.
- Lens distortion correction: Provides the necessary data to undistort an image without black edges.
- Reframing/Composition adjustments: Offers flexibility in post-production to slightly alter the composition.
- Motion blur or depth of field: Ensures effects that extend beyond the frame border are rendered correctly.
The script provides a user-friendly interface to define a base resolution and then calculate and apply an oversized resolution using various methods. It can modify the current scene's render settings and camera, or create new, non-destructive cameras with baked animation.
Features
- Source Camera Selection: Pick any camera in your scene as the basis for operations.
- Base Resolution & FOV/FL:Define the intended final resolution and the camera's Field of View (FOV) or Focal Length (FL).
- Supports both standard cameras (FOV) and
VRayPhysicalCameras (Focal Length). - Option to quickly grab current render settings and camera FOV/FL.
- Supports both standard cameras (FOV) and
- Multiple Oversize Methods:
- Uniform Pixels: Adds a specified number of pixels equally to all sides.
- Percentage: Increases resolution by a percentage of the base resolution.
- Separate Pixels: Adds a specified number of pixels independently to X and Y axes.
- Final Resolution: Directly specify the desired final oversized resolution.
- FOV/FL Compensation: Automatically adjusts the camera's FOV/FL when applying an oversized resolution to maintain the original framing within the new, larger render area.
- Pixel Aspect Ratio: Option to take the render pixel aspect ratio into account for height calculations.
- Camera Creation & Animation Baking:
- Option to create new "base" and "oversized" cameras instead of modifying the selected one.
- If creating new cameras, animation from the source camera can be baked onto them with linear interpolation.
- Apply Settings:
- Apply "Base" settings to the current render setup and selected camera.
- Apply "Oversized" settings to the current render setup and selected camera.
- Save/Load Settings:
- Settings (base resolution, oversize method, values) can be saved into the User Properties of a camera object.
- These settings can be loaded back into the script from a camera.
- Persistent UI Settings: Most UI values are remembered between 3ds Max sessions.
How to Use
- Run the script (e.g., via Scripting > Run Script or by dragging it into a viewport).
- Pick Source Camera:
- Click
Pick Source Cameraand select the camera you want to work with. - The camera's name will appear below the button.
- Click
Refreshto update the FOV/FL display from the currently selected camera if you've changed it manually.
- Click
- Define Base Resolution:
- In the "Base Resolution" group, set the
ResX,ResY, andFOV(orFLif aVRayPhysicalCamerais selected) that represent your intended final cropped output. - Alternatively, click
use Currentto populate these fields from the current render settings and the selected camera's FOV/FL.
- In the "Base Resolution" group, set the
- Options:
bake new cameras: Check this if you want the "Create Cameras" button to generate new cameras with baked animation. Uncheck to have it create new cameras that inherit the source camera's animation (if any) directly.use pixelaspect: Check this if your render pixel aspect ratio is not 1.0 and you want the oversize height calculation to respect it.
- Choose Oversize Method:
- In the "Oversize Method" group, select one of the radio buttons:
- Uniform Pixels: Enter the number of extra pixels to add to each side (horizontally and vertically).
- Percentage: Enter the percentage by which to increase the resolution.
- Separate Pixels: Enter the extra pixels to add to X and Y axes independently.
- Final Resolution: Directly input the target
Final XandFinal Yresolution for the oversized render.
- The relevant input fields will appear below the radio buttons.
- In the "Oversize Method" group, select one of the radio buttons:
- Actions:
use Base: Applies the "Base Resolution" and FOV/FL to the current scene's render settings and modifies the selected source camera.use Oversized: Calculates the oversized resolution and the compensated FOV/FL, then applies them to the current scene's render settings and modifies the selected source camera.Create Cameras:- Creates two new cameras:
[SourceCameraName]_baseand[SourceCameraName]_oversize. - The
_basecamera will have the base FOV/FL. - The
_oversizecamera will have the compensated FOV/FL for the oversized resolution. - If
bake new camerasis checked, animation from the source camera will be baked onto these new cameras. - Saves the current script settings into the User Properties of both newly created cameras.
- Creates two new cameras:
Load from Cam: If the currently picked source camera has OversizeRender data saved in its User Properties (e.g., from a previous "Create Cameras" operation), this button will load those settings back into the script's UI.
