3ds Max Plug-in Guide

Job Submission

You can submit jobs from within 3ds Max and installing the integrated Submit Max To Deadline (SMTD) script, or you can submit them from the Monitor. The instructions for installing the integrated SMTD script can be found further down this page.

To submit from within 3ds Max, select the Deadline menu item that you created during the integrated submission script setup.

image0 image1

Submission Options

The general Deadline options are explained in the Job Submission documentation, and the Draft/Shotgun options are explained in the Draft and Shotgun documentation. The 3ds Max specific options are as follows.

Scene File Submission Options

  • SAVE and Submit Current Scene File with the Job to the REPOSITORY: The current scene will be saved to a temporary file which will be sent with the job and will be stored in the Job’s folder in the Repository.
  • SAVE and Submit Current Scene File to GLOBAL NETWORK PATH: The current scene will be saved to a temporary file which will be copied to a Globally-Defined Alternative Network Location (e.g. dedicated file server). It is specified in [Repository]\submission\3dsmax\SubmitMaxToDeadline_Defaults.ini under [GlobalSettings] as the SubmitSceneGlobalBasePath key. It will be referenced by the Job via its path only. This will reduce the load on the Repository server.
  • SAVE and Submit Current Scene File to USER-DEFINED NETWORK PATH: The current scene will be saved to a temporary file which will be copied to a User-Defined Alternative Network Location (e.g. dedicated file server) stored as a local setting. It will be referenced by the Job via its path only. This will reduce the load on the Repository server.
  • DO NOT SAVE And Use Current Scene’s ORIGINAL NETWORK PATH: The current scene will NOT be saved, but the original file it was opened from will be referenced by the job. Assuming the file resides on a dedicated file server, this will speed up submission and rendering significantly, but current changes to the scene objects will be ignored.

Sanity Check

  • Run Sanity Check Automatically Before Submission: This options forces Submit To Deadline to perform a Sanity Check before submitting the scene to Deadline. The Sanity Check is implemented as a separate set of scripted functions which can be enhanced by 3rd parties to meet specific studio needs. For more information, please refer to the Sanity Check section.
  • Run Now: This button performs a Sanity Check without submitting a job to Deadline. Any potential problems will be reported and can be fixed before actually submitting the job.

Job Options

image2

  • Out-Of-Order Rendering Every Nth Frame: Deadline will render every Nth frame based on the order selected in the drop down box. This option can be very useful when rendering long test animations - you can render a rough animation containing evey Nth frame early enough to detect any major issues before all frames have been rendered, or in cases where the major action happens in the end of the sequence, reverse the rendering order.
  • Render Preview Job First: When the checkbox is checked, two jobs will be submitted. The first job will have [PREVIEW FRAMES] added to its name, have a priority of 100, and will render only N frames based on the spinner’s value. The step will be calculated internally. If the spinner is set to 2, the first and the last frame will be rendered. With a value of 3, the first, middle and last frames will be rendered and so on. The second job will have [REST OF FRAMES] added to its name, and will be DEPENDENT on the first job and will start rendering once the preview frames job has finished. It will have the priority specified in the dialog, and render all frames not included in the preview job.
  • Enforce Sequential Rendering: Recommended for particle rendering.
  • Submit Visible Objects Only: This option should be used at your own risk, as it is heavily dependent on the content of your scene. In most cases, it can be used to submit only a subset of the current scene to Deadline, skipping all hidden objects that would not render anyway. This feature will be automatically disabled if the current scene contains any Scene XRefs. The feature will create an incorrect file if any of the scene objects depend INDIRECTLY on hidden objects.
  • Force 3ds Max Build: This drop-down list allows you to specify which build of 3ds Max (32 bit vs. 64 bit) to use when rendering the job. The list will be greyed out when running in 3ds Max 8 or earlier.
  • Make Force 3ds Max Build Sticky: When the checkbox is unchecked, the “Force 3ds Max Build” drop-down list selection will NOT persist between sessions and will behave as documented above in the “Default” section. When the checkbox is checked, the “Force 3ds Max Build” drop-down list selection will persist between sessions. For example, if you are submitting from a 64 bit build of 3ds Max 9 or higher to an older network consisting of only 32 bit builds, you can set the drop-down list to “32bit” once and lock that setting by checking “Make Force 3ds Max Build Sticky”.

Job Dependencies

When the checkbox is checked and one or more jobs have been selected from the multi-list box, the job will be set to Pending state and will start rendering when all jobs it depends on have finished rendering. Use the Get Jobs List button to populate the Job List and the Filter options with job data from the Repository.

image3

Job Scheduling

Enable job scheduling. See the Scheduling section of the Modifying Job Properties documentation for more information on the available options.

image4

3ds Max Rendering

image5

  • Use Alternate Plugin.ini file: By default, 3ds Max will launch using the default plugin.ini file in the local installation. You can use this option to select an alternative plugin.ini file to use instead. Alternative plugin.ini files can be added to [Repository]\plugins\3dsmax, and then they will appear in the drop down box in the submitter (see the Custom Plugin.ini File Creation section for more information). If you have the [Default] option selected, it’s the equivalent to having this feature disabled.
  • Fail On Black Frames: This option can be used to fail the render if a certain portion of the output image or its render elemeents is black. The Black Pixel % defines the minimum percentage of the image’s pixels that must be black in order for the image to be considered black. If each of RGB are all less than or equal to the Threshold, and the alpha is not between the Threshold and (1.0 - threshold), then the pixel is considered black. If the Threshold is greater than or equal to 0.5, then the alpha value has no effect.
  • Override Bitmap Pager Setting While Rendering: You can specify if you want the 3dsmax Bitmap Pager setting to be enabled or disabled.
  • Submit External Files With Scene: Whether the external files (bitmaps, xrefs etc.) will be submitted with the scene or not.
  • Merge Object XRefs: If object XRefs will be merged during submission.
  • Merge Scene XRefs: If scene XRefs will be merged during submission.
  • Force 3dsmax Workstation Mode (Uses up a 3dsmax License): Used mainly for testing and debugging purposes and should be left unchecked. When this option is unchecked, 3ds max will be started in Slave mode without the User Interface, which does not require a 3ds Max license. When checked, 3ds max will be launched in full Interactive mode and will require a license. Note that Workstation mode is set automatically when submitting MAXScripts to Deadline.
  • Enabled Silent Mode: This option is only available when Force Workstation Mode is checked. It can help suppress some popups that 3ds Max displays (although some popups like to ignore this setting).
  • Ignore Missing External File Errors: Missing external files could mean that the 3ds Max scene will render incorrectly (with textures missing etc). In some cases though, missing external files could be ignored- for example if the job is meant for test rendering only. If you want the job to fail if a missing external resource is detected, uncheck this checkbox.
  • Ignore Missing UVW Errors: Missing UVWs could mean that some 3ds Max object would render incorrectly (with wrong texture mapping etc). In some cases though, missing UVWs could be ignored (for example if the job is meant for test rendering).
  • Ignore Missing XREF Errors: Missing XFEFs could mean that the 3ds Max scene cannot be loaded correctly. In some cases though, missing XFEFs could be ignored. If you want the job to fail if a missing XFEF message is detected at startup, keep this checkbox unchecked.
  • Ignore Missing DLL Errors: Missing DLLs could mean that the 3ds Max scene cannot be loaded or rendered correctly. In some cases though, missing DLLs could be ignored. If you want the job to fail if a missing DLL message is detected at startup, keep this checkbox unchecked.
  • Do Not Save Render Element Files: Enable this option to have Deadline skip the saving of Render Element image files during rendering (the elements themselves are still rendered).
  • Show Virtual Frame Buffer: If checked, the 3ds Max frame buffer will be displayed on the slave during rendering.
  • Disable Progress Update Timeout: Enable this option to disable progress update checking. This is useful for renders like Fume FX sims that don’t constantly supply progress to 3dsmax.
  • Disable Multipass Effects: Enable this option to skip over multipass effects if they are enabled for the camera to be rendered.
  • Restart Renderer Between Frames: This option can be used to force Deadline to restart the renderer after each frame to avoid some potential problems with specific renderers. Enabling this option has little to no impact on the actual render times.
  • Job Is Interruptible: If enabled, this job will be canceled if a job with higher priority is submitted to the queue.
  • Apply Custom Material To Scene: If checked, all geometry objects in the scene will be assigned one of the user-defined materials available in the drop down box.

3ds Max Pathing Options

image6

  • Remove Filename Padding: If checked, the output filename will be (for example) “output.tga” instead of “output0000.tga”. This feature should only be used when rendering single frames. If you render a range of frames with this option checked, each frame will overwrite the previous existing frame.
  • Force Strict Output Naming: If checked, the output image filename is automatically modified to include the scene’s name. For example, if the scene name was myScene.max and the output image path was \\myServer\images\output.tga, the output image path would be changed to \\myServer\images\myScene\myScene.tga. If the new output image path doesn’t exist, it is created by the 3dsmax plugin before rendering begins.
  • Update Render Elements’ Paths: Each Render Element has its own output path which is independent from the render output path. When this option is unchecked, changing the output path will NOT update the Render Elements’ paths and the Elements could be written to the wrong path, possibly overwriting existing passes from a previous render. When checked, the paths will be updated to point at sub-folders of the current Render Output path with names based on the name and class of the Render Element. The actual file name will be left unchanged.
  • Also Update RE’s Filenames: If enabled, the Render Elements’ file names will also be updated along with their paths.
  • Permanent RE Path Changes: When this checkbox is checked and the above option is also enabled, changes to the Render Elements paths will be permanent (in other words after the submission, all paths will point at the new locations created for the job). When unchecked, the changes will be performed temporarily during the submission, but the old path names will be restored right after the submission.
  • Use Alternate Path: Allows you to specify an alternate path file in the MXP format that the slaves can use to find bitmaps that are not found on the primary map paths.

Render Output Autodesk ME Image Sequence (IMSQ) Creation

image7

  • Save File: Specify the render output. Note that this updates the 3ds Max Render Output dialog, and is meant as a convenience to update the output file.
  • Create Image Sequence (IMSQ) File: If checked, an Autodesk IMSQ file will be created from the output files at the output location.
  • Copy IMSQ File On Completion: If checked, the IMSQ file will be copied to the location specified in the text field.

User Options

image8

  • Enable Local Rendering: If checked, Deadline will render the frames locally before copying them over to the final network location.
  • One Cpu Per Task: Forces each task of the job to only use a single CPU. This can be useful when doing single threaded renders and the Concurrent Tasks setting is greater than 1.
  • Automatically Update Job Name When Scene File Name Changes: If checked, the Job Name setting in the submission dialog will automatically match the file name of the scene loaded. So if you load a new scene, the Job Name will change accordingly.
  • Override Renderer’s Low Priority Thread Option (Brazil r/s, V-Ray): When checked, the Low Priority Thread option of the renderers supporting this feature will be forced to false during the submission. Both Brazil r/s and V-Ray provide the feature to launch the renderer in a low priority thread mode. This is useful when working with multiple applications on a workstation and the rendering should continue in the background without eating all CPU resources. When submitting a job to Deadline though, this should be generally disabled since we want all slaves to work at 100% CPU load.
  • Clear Material Editor In The Submitted File: Clears the material editor in the submitted file during submission.
  • Warn about Missing External Files on Submission: When checked, a warning will be issued if the scene being submitted contains any missing external files (bitmaps etc.). Depending on the state of the’Ignore Missing External File Errors checkbox under the Render tab, such files might not cause the job to fail but could cause the result to look wrong. When unchecked, scenes with missing external files will be submitted without any warnings.

Export Renderer-Specific Advanced Settings

image9

If this option is enabled for a specific renderer, you will be able to modify a variety of settings for that renderer after submission from the Deadline Monitor. To modify these settings from the Monitor, right-click on the job and select Modify Properties, then select the 3dsmax tab.

Submission Timeouts

image10

  • Job Submission Timeout in seconds: This value spinner defines how many seconds to wait for the external Submitter application to return from the Job submission before stopping the attempt with a timeout message.
  • Quicktime Submission Timeout in seconds: This value spinner defines how many seconds to wait for the external Submitter application to return from the Quicktime submission before stopping the attempt with a timeout message.
  • Data Collection Timeout in seconds: This value spinner defines how many seconds to wait for the external Submitter application to return from data collecting before stopping the attempt with a timeout message. Data collecting includes collecting Pools, Categories, Limit Groups, Slave Lists, Slave Info, Jobs etc.

State Sets

image11

Select the State Sets you want to submit to Deadline. This option is only available in 3ds Max 2012 (Subscription Advantage Pack 1) and later.

Run Python Scripts

image12

  • Run Pre-Job Script: Specify the path to a Python script to execute when the job initially starts rendering.
  • Run Post-Job Script: Specify the path to a Python script to execute when the job finishes rendering.
  • Run Pre-Task Script: Specify the path to a Python script to execute before each task starts rendering.
  • Run Post-Task Script: Specify the path to a Python script to execute after each task finishes rendering.

Run Maxscript Scripts

image13

  • Submit Script Job: This checkbox lets you turn the submission into a MAXScript job. When checked, the scene will NOT be rendered, instead the specified MAXScript code will be executed for the specified frames. Options that collide with the submission of a MAXScript Job like “Tile Rendering” and “Render Preview Job First” will be disabled or ignored.
  • Single Task: This checkbox lets you run the MAXScript Job on one slave only. When checked, the job will be submitted with a single task specified for frame 1. This is useful when the script itself will perform some operations on ALL frames in the scene, or when per-frame operations are not needed at all. When unchecked, the frame range specified in the Render Scene Dialog of 3ds Max will be used to create the corresponding number of Tasks. In this case, all related controls in the Job tab will also be taken into account.
  • Workstation Mode: This checkbox is a duplicate of the one under the Render tab (checking one will affect the other). MAXScript Jobs that require file I/O (loading and saving of 3ds Max files) or commands that require the 3ds Max UI to be present, such as manipulating the modifier stack, HAVE TO be run in Workstation mode (using up a 3ds Max license on the Slave). MAXScript Jobs that do not require file I/O or 3ds Max UI functionality can be run in Slave mode on any number of machines without using up 3ds Max licenses.
  • New Script From Template: This button creates a new MAXScript without any execution code, but with all the necessary template code to run a MAXScript Job on Deadline.
  • Pick Script: This button lets you select an existing script from disk to use for the MAXScript Job. It is advisable to use scripts created from the Template file using the “New Script From Template” button.
  • Edit MAXScript File: This button lets you open the current script file (if any) for editing.
  • Run Pre-Load Script: This checkbox lets you run a MAXScript specified in the text field below it BEFORE the 3ds Max scene is loaded for rendering by the Slave.
  • Run Post-Load Script: This checkbox lets you run a MAXScript specified in the text field below it AFTER the 3ds Max scene is loaded for rendering by the Slave.
  • Run Pre-Frame Script: This checkbox lets you run a MAXScript specified in the text field below it BEFORE the Slave renders a frame.
  • Run Post-Frame Script: This checkbox lets you run a MAXScript specified in the text field below it AFTER the Slave renders a frame.
  • Post-Submission Function Call: This field can be used by TDs to enter an arbitrary user-defined MAXScript Expression (NOT a path to a script!) which will be executed after the submission has finished. This can be used to trigger the execution of user-defined functions or to press a button in a 3rd party script. In the screenshot, the expression presses a button in a globally defined rollout which is part of an in-house scene management script. If you want to execute a multi-line script after each submission, you could enter fileIn \”c:\temp\somescript.ms\” in this field and the content of the specified file will be evaluated. The content of this field is sticky and saved in the local INI file - it will persist between sessions until replaced or removed manually.

The MAXScript Job Template file is located in the Repository under \submission\3dsmax\MAXScriptJobTemplate.ms. When the button is pressed, a copy of the template file with a name pattern “MAXScriptJob_TheSceneName_XXXX.ms” will be created in the \3dsmax#\scripts\SubmitMaxToDeadline folder where XXXX is a random ID and 3dsmax# is the name of the 3ds Max root folder. The script file will open in 3ds Max for editing. You can add the code to be executed in the marked area and save to disk. The file name of the new template will be set as the current MAXScript Job file automatically. If a file name is already selected in the UI, you will be prompted about replacing it first.

Deadline exposes an interface to MAXScript, which allows you to gather information about the job being rendered. See the Deadline Maxscript Interface documentation for the available functions and properties.

Tile Rendering

image14

  • Enable Tiles Rendering: This checkbox enables the tile rendering option.
  • Tiles In X / Tiles In Y: These values specify the number of tiles horizontally and vertically. The total number of tiles (and jobs) to be rendered is calculated as X*Y and is displayed in the UI.
  • Show Tiles In Viewport: Enables the tile display gizmo.
  • Tile Pixel Padding: This value defines the number of pixels to overlap between tiles. By default it is set to 0, but when rendering Global Illumination, it might be necessary to render tiles with significant overlapping to avoid artifacts.
  • Re-Render User-Defined Tiles: When checked, only user-defined tiles will be submitted for re-rendering. Use the [Specify Tiles To Re-render...] check-button to open a dialog and select the tiles to be rendered.
  • Specify Tiles To Re-render: When checked, a dialog to select the tiles to be re-rendered will open. To close the dialog, either uncheck the button or press the [X] button on the dialog’s title bar.
    • Enable Blowup Mode: If enabled, tile rendering will work by zooming in on the region and rendering it at a smaller resolution. Then that region is blown up to bring it to the correct resolution. This has been known to help save memory when rendering large high resolution images.
  • Submit All Tiles As A Single Job: By default, a separate job is submitted for each tile (this allows for tile rendering of a sequence of frames). For easier management of single frame tile rendering, you can choose to submit all the tiles as a single job.
  • Submit Dependent Assembly Job: When rendering a single tile job, you can also submit a dependent assembly job to assemble the image when the main tile job completes.
  • Cleanup Tiles After Assembly: If rendering an assembly job, this will delete the original tiles after the main image has been assembled.
  • Split Machine Limit Between Tile Jobs: For Multiple Tile Job rendering only. When checked, the limit specified in the Job tab will be divided equally between the Tile Jobs. If no limit is specified in the Job tab, each Job will render with a limit of ONE! If unchecked and a Machine Limit is specified in the Job tab, each Tile job will get that limit. If unchecked and no Machine Limit is enforced in the Job tab, all Tile Jobs will be rendered without any limits.

Region Rendering

image15

When enabled, only the specified region will be rendered and depending on the region type selected, it can be cropped or blown up as well. If the Enable Distributed Tiles Rendering checkbox is checked, it will be unchecked. This option REPLACES the “Crop” option in the Render mode drop-down list in the 3ds Max UI. In other words, the 3ds Max option does not have to be selected for Region Rendering to be performed on Deadline. The region can be specified either using the CornerX, CornerY, Width and Height spinners, or by getting the current region from the active viewport. To do so, set the Render mode drop-down list to either Region or Crop, press the Render icon and drag the region marker to specify the desired size. Then press ESC to cancel and press the Get Region From Active View to capture the new values.

Quicktime Generation From Rendered Frame Sequence

Create a Quicktime movie from the frames rendered by a 3ds Max job. You can create a Quicktime using an Apple Quicktime installation or by using Fusion. See the Deadline Quicktime documentation for more information on the available options.

image16

Render To Texture

This option enables texture baking through Deadline. Use the Add, Remove, and Clear All buttons to add and remove objects from the list of objects to bake.

image17

Batch Submission

image18

  • Use Data from 3ds Max Batch Render: This checkbox enables Batch Submission using the 3ds Max Batch Render dialog settings. If checked, a single MASTER job will be sent to Deadline which in turn will “spawn” all necessary BATCH jobs.
  • Open Dialog: This button opens the 3ds Max Batch Render dialog in Version 8 and higher.
  • Update Info: This button reads the 3ds Max Batch Render dialog settings and displays the number of enabled vs. defined Views.

Remote Submission (For Internal Use Only)

  • Repository: Select the repository you would like to submit the job to. Leaving this at the DISABLED setting disables remote submission.
  • Suspend Job After Transfer: The job will be transfered to the remote repository in the suspended state.
  • Jpeg Output Path: Check this box to specify an alternative output path where Jpegs of each output image are copied to after the frame is rendered. Note that the render doesn’t fail if saving the Jpeg failed.

While this feature was designed for internal use only, it is possible to make use of the feature in the public version of Deadline. To show the Remote tab on submission, do the following:

  • Create a file called RemoteSubmissionRepositories.ini on a network share that can be accessed by all machines you plan to remote submit from. This file is used by Deadline to show a meaningful name that represents the network path to the repository you wish to submit to. Each line in this file should contain the user friendly location name, followed by a comma, followed by the network path to the repository at that location. For example, the file contents could look like:

    Main Repository,\\main_repository_machine\DeadlineRepository
    Secondary Repository,\\another_machine\DeadlineRepository
    ...
    
  • Open the file [Repository]\submission\3dsmax\SubmitMaxToDeadline.ms in a text editor and find this line:

    local ShowRemoteTab = doesFileExist "V:\\deadline_synch\\RemoteSubmissionRepositories.ini"
    

    Simply replace the path in quotes with the path to the RemoteSubmissionRepositories.ini you created on the network, then save the file. You will also have to replace the path in the SubmitMaxToDeadline_Functions.ms file as well.

  • The next time you launch the 3ds Max submission dialog, the Remote tab should be visible.

Sanity Check

The 3ds Command Sanity Check script defines a set of functions to be called to ensure that the scene submission does not contain typical errors like wrong render view and frame range settings, incorrect output path, etc.

The Sanity Check is enabled by the Run Sanity Check Automatically Before Submission checkbox in the User Options group of controls in the Submit To Deadline (3dsmaxCmd) dialog. You can also run the Sanity Check automatically by clicking the Run Now! button.

image19

The dialog contains the following elements:

  • The upper area (Error Report) lists the problems found in the current scene.
  • The lower area (Feedback Messages) lists the actions the Sanity Check performs and gives feedback to the user. The latest message is always on top.
  • Between the two areas, there is a summary text line listing the total number of errors and a color indicator of the current Sanity Check state. When red, the Sanity Check will not allow a job submission to be performed.

The Error Report

The left column of the Error Report displays a checkbox and the type of the error. The checkbox determines whether the error will be taken into account by the final result of the check. Currently, there are 3 types of errors:

  • FATAL: The error cannot be fixed automatically and requires manual changes to the scene itself. A job submission with such an error would be pointless. The state of the checkbox is ignored and considered always checked.
  • Can Be Fixed: The error can be fixed automatically or manually. If the checkbox is active, the error contributes to the final result. If unchecked, the error is ignored and handled as a warning.
  • Warning: The problem might not require fixing, but could be of importance to the user. It is not taken into account by the final result (the state of the checkbox is ignored and considered always unchecked).

Repairing Errors

In 3ds Max 8 and earlier, double-clicking an Error Message in the Error Report window will cause an associated repair function to be executed and/or a Report Message to be output in the Feedback Messages window. In 3ds Max 9 and higher, right-clicking an Error Message in the Error Report window will cause an associated repair function to be executed and/or a Report Message to be output in the Feedback Messages window. This difference was caused by the switch to DotNet controls which handle double-clicks as checked events, changing the checkbox state in front of the error instead.

Updating the Error Report

You can rerun/update the Sanity Check in one of the following ways:

  • Clicking the dialog anywhere outside of the two message areas will rerun the Sanity Check and update all messages.
  • Double-clicking any Message in the Feedback Messages window will rerun the Sanity Check and update all messages.
  • Reparing an error by double-clicking will also automatically rerun the Sanity Check
  • Pressing the Run Now! button in the Submit To Deadline dialog will update the Sanity Check.

Plug-in Configuration

You can configure the 3dsmax plugin settings from the Deadline Monitor. While in super user mode, select Tools -> Configure Plugins and select the 3dsmax plugin from the list on the left. To get a description of each setting, simply hover the mouse cursor over a setting and a tooltip will be displayed.

image20

Integrated Submission Script Setup

The following procedure describes how to install the integrated Autodesk 3ds Max submission script. The integrated submission script allows for submitting 3ds Max render jobs to Deadline directly from within the 3ds Max editing GUI. The integrated render job submission script and the following installation procedure has been tested with 3ds Max versions 9, 2008, 2009, and 2010 (including Design editions).

Installation of the Submission Script

  • Copy [Repository]/ClientSetup/3dsmax/Deadline-SubmitMaxToDeadline.mcr to [3ds Max Install Directory]/UI/MacroScripts

Add Max2Deadline Command to 3dsmax Menu

  • Select MAXScript -> Run Script, then find the directory [3ds Max Install Directory]/UI/MacroScripts, select the file Deadline-SubmitMaxToDeadline.mcr, and click Open.

image21

  • Then select Customize -> Customize User Interface, select the Menus tab, and make sure that the Main Menu Bar is selected in the combo box at the top-right of the dialog.

image22

  • In the Menus list box at the bottom-left, right-click and select New Menu..., and create a menu called Deadline.

image23

  • Drag-and-drop the Deadline menu from the Menus list box to the desired location in the list box on the right

image24

  • In the Group combo box in the top-left, select Main UI, and in the Category combo box below, select Deadline

image25

  • Drag-and-drop the Submit To Deadline item that appears in the Action list box to the Deadline menu on the right.

image26

  • Close the dialog, and the new menu should appear in the main tool bar.

image27

Advanced Features For Technical Directors

Deadline MAXScript Interface

When running a MAXScript job through Deadline, there is an interface that Deadline exposes called DeadlineUtil which you can use to get information about the job being rendered. The API for the interface between MAXScript and Deadline is as follows:

Functions

Function

Description

string GetAuxFilename( int index )

Gets the file with the given index that was submitted with the job.

string GetJobInfoEntry( string key )

Gets a value from the plugin info file that was submitted with the job, and returns an empty string if the key doesn’t exist.

string GetOutputFilename( int index )

Gets the output file name for the job at the given index.

string GetSubmitInfoEntry( string key )

Gets a value from the job info file that was submitted with the job, and returns an empty string if the key doesn’t exist.

int GetSubmitInfoEntryElementCount( string key )

If the job info entry is an array, this gets the number of elements in that array.

string GetSubmitInfoEntryElement( int index, string key )

If the job info entry is an array, this gets the element at the given index.

void FailRender( string message )

Fails the render with the given error message.

void LogMessage( string message )

Logs the message to the slave log.

void SetProgress( float percent )

Sets the progress of the render in the slave UI.

void SetTitle( string title )

Sets the render status message in the slave UI.

Properties

Property

Description

int CurrentFrame

Gets the current frame.

int CurrentTask

Gets the current task ID.

string JobsDataFolder

Gets the local folder on the slave where the Deadline job files are copied to.

string PluginsFolder

Gets the local folder on the slave where the Deadline plugin files are copied to.

string SceneFileName

Gets the file name of the loaded 3ds Max scene.

string SceneFilePath

Gets the file path of the loaded 3ds Max scene.

Submitter’s Sticky Settings and Factory Defaults

The latest version of the Submit Max To Deadline script allows the user to control the stickiness of most User Interface controls and, in the case of non-sticky settings, the defaults to be used. In previous versions of SMTD, both the stickiness and the defaults were hard-coded.

Overview

Two INI files located in the Repository in the folder \submission\3dsmax control the stickiness and the defaults:

  • SubmitMaxToDeadline_StickySettings.ini - this file can be used to define which controls in the SMTD UI will be stored locally in an INI file (“sticky”) and which will be reset to defaults after a restart of the Submitter.
  • SubmitMaxToDeadline_Defaults.ini - this file can be used to define the default settings of those controls set to non-sticky in the other file.

In addition, a local copy of the SubmitMaxToDeadline_StickySettings.ini file can be saved in a user’s application data folder. This file will OVERRIDE the stickiness settings in the Repository and can contain a sub-set of the definitions in the global file.

Details

When SMTD is initializing, it will perform the following operations:

  1. The SMTDSettings Struct will be initialized to the factory defaults of all settings.
  2. Each UI setting will be initially assumed to be sticky.
  3. The global Stickiness definition file is searched for a key matching the current UI setting’s name.
    • If the key is set to “false”, the setting is not sticky.
    • If the key is set to anything but “false”, the setting is sticky.
    • If the key does not exist, the stickiness still defaults to the initial value of true.
  4. A local Stickiness definition file is searched for a key matching the current UI setting’s name.
    • If the key is set to “false”, the setting is not sticky and overrides whatever was found in the global file.
    • If the key is set to anything but “false”, the setting is sticky, overriding whatever was found in the global file.
    • If the key does not exist in the local file, the last known value (initial or from the global file) remains in power.
  5. At this point, SMTD knows whether the setting is sticky or not. Now it gets the global default value:
    • If a matching key exists in the file SubmitMaxToDeadline_Defaults.ini, the setting is initialized to its value.
    • If no matching key exists in the global defaults file, the original factory default defined in the SMTDStruct definition will remain in power.
    • If the setting is sticky, SMTD loads the last known value from the local INI file. If the value turns out to be invalid or not set, it uses the default instead.
    • If the setting is not sticky, the default loaded from the global defaults file or, if no such default was loaded, the factory default, will be assigned to the setting.

When the User Interface is created, the stickiness info from the local and global files will determine whether a * star character will be added to the control’s name, reflecting the current stickiness settings.

Using this new feature, a facility can customize the submitter globally to default to the preferred settings and keep certain settings sticky so their values can be determined by the artists. In addition, single users can override the company-wide stickiness settings using a local file if they feel their workflow require a different setup.

Custom Job Name Controls

There are two ways to customize the job name. You can use keys in the job name that are replaced with actual values (like $scene), or you can have the job name be generated from a list of shows, shots, etc. You will then be able to use the [>>] button to the right of the Job Name field to select these custom job names.

Generate Job Name From Keys

There is a file in the ..\submission\3dsmax\ folder in your Deadline Repository called SubmitMaxToDeadline_NameFormats.ini. In addition, a local copy of the SubmitMaxToDeadline_NameFormats.ini file can be saved in a user’s application data folder. This file will OVERRIDE the name formats in the Repository and can contain a sub-set of the definitions in the global file. This file will contain some key-value pairs such as:

$scene=(getfilenamefile(maxfilename))
$date=((filterstring (localtime) " ")[1])
$username=(sysInfo.username)
$camera=(local theCam = viewport.getCamera() if (isValidNode theCam) then theCam.name else "")
$outputfilename=(if (rendOutputFilename != "") then (filenameFromPath rendOutputFilename) else "")
$outputfile=(if (rendOutputFilename != "") then (getFilenameFile rendOutputFilename) else "")
$outputtype=(if (rendOutputFilename != "") then (getFilenameType rendOutputFilename) else "")
$maxversion=(((maxVersion())[1]/1000) as string)

The key to the left of = is the string that will be replaced in the job name. The value to the right of the = is the maxscript code that is executed to return the replacement string (note that the value returned must be returned as a string). So if you use $scene in your job name, it will be swapped out for the scene file name. You can append additional key-value pairs or modify the existing ones as you see fit.

By default, the [>>] button will already have $scene or $outputfilename as selectable options. You can then create an optional JobNames.ini file in the 3dsmax submission folder, with each line representing an option. For example:

$scene
$outputfilename
$scene_$camera_$username
$maxversion_$date

These options will then be available for selection in the submission dialog. This allows for all sorts of customization with regards to the job name.

Generate Job Name For Shows

This advanced feature allows the addition of custom project, sequence, shot and pass names to the [>>] list to the right of the Job Name field. Producers in larger facilities could provide full shot lists via a central set of files in the Repository to allow users to pick existing shot names and ensuring consistent naming conventions independent from the 3ds Max scene naming.

To create a new set of files, go to the ..\submission\3dsmax\ folder in your Deadline Repository and create the following files:

Projects.ini - This file describes the projects currently available for Custom Job Naming. Each Project is defined as a Category inside this file, with two keys: Name and ShortName.

For example:

[SomeProject]
Name=Some Project in 3D
ShortName=SP
[AnotherProject]
Name=Another Project
ShortName=AP

SomeProject.ini - This is a file whose name should match exactly the Category name inside the file Projects.ini and contains the actual sequence, shot and pass description of the particular project. One file is expected for each project definition inside the Projects.ini file.

For example:

[SP_SS_010]
Beauty=true
Diffuse=true
Normals=true
ZDepth=true
Utility=true
[SP_SS_150]
Beauty=true
Diffuse=true
Utility=true
[SP_SO_020]
Beauty=true
[SP_SO_030]
Beauty=true

The Submitter will parse this file and try to collect the Sequences by matching the prefix of the shot names, for example in the above file, it will collect two sequences - SP_SS and SP_SO - and build a list of shots within each sequence, then also build a list of passes within each shot.

Then, when the [>>] button is pressed, the context menu will contain the name of each project and will provide a cascade of sub-menus for its sequences, shots and passes.

image28

If you selected the entry SomeProject>SP_SS>SP_SS_150>Diffuse, the resulting Job Name will be “SP_SS_150_Diffuse”:

image29

You can enter as many projects into your Projects.ini file as you want and provide one INI file for each project describing all its shots and passes. If an INI file is missing, no data will be displayed for that project.

Custom Comment Controls

Just like job names, you can use keys in the comment field that are replaced with actual values (like $scene). There is a file in the ..\submission\3dsmax\ folder in your Deadline Repository called SubmitMaxToDeadline_CommentFormats.ini. In addition, a local copy of the SubmitMaxToDeadline_CommentFormats.ini file can be saved in a user’s application data folder. This file will OVERRIDE the comment formats in the Repository and can contain a sub-set of the definitions in the global file. This file will contain some key-value pairs such as:

$default=("3ds Max " + SMTDFunctions.getMaxVersion() + " Scene Submission")
$scene=(getfilenamefile(maxfilename))
$date=((filterstring (localtime) " ")[1])
$deadlineusername=(SMTDFunctions.GetDeadlineUser())
$username=(sysInfo.username)
$camera=(local theCam = viewport.getCamera() if (isValidNode theCam) then theCam.name else "")
$outputfilename=(if (rendOutputFilename != "") then (filenameFromPath rendOutputFilename) else "")
$outputfile=(if (rendOutputFilename != "") then (getFilenameFile rendOutputFilename) else "")
$outputtype=(if (rendOutputFilename != "") then (getFilenameType rendOutputFilename) else "")
$maxversion=(((maxVersion())[1]/1000) as string)

The key to the left of = is the string that will be replaced in the comment. The value to the right of the = is the maxscript code that is executed to return the replacement string (note that the value returned must be returned as a string). So if you use $scene in your comment, it will be swapped out for the scene file name. You can append additional key-value pairs or modify the existing ones as you see fit.

By default, the [>>] button will already have $default. You can then create an optional Comments.ini file in the 3dsmax submission folder, with each line representing an option. For example:

$default
$scene
$outputfilename
$scene_$camera_$username
$maxversion_$date

These options will then be available for selection in the submission dialog. This allows for all sorts of customization with regards to the comment field.

Auto-Suggest Category and Priority Mechanism

This feature has been implemented to help Producers suggest categories and priorities based on Shots and Sequence signatures which are part of the 3ds Max Scene Name.

This feature DOES NOT ENFORCE the Category and Priority for the job, it only suggests a value based on project guidelines - the Category and Priority can be changed manually after the suggestion.

To use this feature, you have to edit the file called “SubmitMaxToDeadline_CategoryPatterns.ms” located in the Repository in the \submission\3dsmax folder. As a shortcut, you can press the button Edit Patterns... in the Options tab of the Submitter - the file will open in the built-in MAXScript Editor.

The file defines a global array variable called SMTD_CategoryPatterns which will be used by the Submitter to perform pattern matching on the Job Name and try to find a corresponding Category and optionally a priority value in the array.

The array can contain one or more sub-arrays, each one representing a separate pattern definition.

Every pattern sub-array consists of four array elements:

  1. The first element is an array containing zero, one or more string patterns using * wildcards. These strings will be used to pattern match the Job Name. If it matches, it will be considered for adding to the Category and for changing the Priority. If the subarray is empty, all jobs will be considered matching the pattern.
  2. The second element is also an array containing similar pattern strings. These strings will be used to EXCLUDE jobs matching these patterns from being considered for this Category and Priority. If the subarray is empty, no exclusion matching will be performed.
  3. The third element contains the EXACT name (Case Sensitive!) of the category to be set if the Job Name matches the patterns. If the category specified here does not match any of the categories defined via the Deadline Monitor, no action will be performed.
  4. The fourth element specifies the Priority to give the job if it matches the patterns. If the value is -1, the existing priority will NOT be changed.

The pattern array can contain any number of pattern definitions. The higher a definition is on the list, the higher its priority - if a Job Name matches multiple pattern definitions, only the first one will be used.

The pattern matching will be performed only if the checkbox Auto-Suggest Job Category and Priority in the Options Tab is checked. It will be performed when the dialog first opens or when the the Job Name is changed.

An example:

  • Let’s assume that a VFX facility is working on a project called “SomeProject” with multiple sequences labelled “AB”, “CD” and “EF”.
  • The network manager has created categories called “SomeProject”, “AB_Sequence”, “CD_Sequence”, “EF_Sequence” and “High_Priority” via the Monitor.
  • The Producers have instructed the Artists to name their 3ds Max files “SP_AB_XXX_YYY_” where SP stands for “SomeProject”, “AB” is the label of the sequence followed by the scene and shot numbers.
  • Now we want to set up the Submitter to suggest the right Categories for all Max files sent to Deadline based on these naming conventions.
  • We want jobs from the CD sequence to be set to Priority of 60 unless they are from the scene with number “007”.
  • We want jobs from the AB sequence to be set to Priority of 50
  • We don’t want to enforce any priority to jobs for sequence EF.
  • Also we want shots from the “AB” sequence with scene number “123” and “EF” sequence with scene shot number “038” to be sent at highest priority and added to the special “High Priority” category for easier filtering in the Monitor.
  • Finally we want to make sure that any SP project files that do not contain a sequence label are added to the general “SomeProject” category with lower priority.

To implement these rules, we could create the following definitions in the “SubmitMaxToDeadline_CategoryPatterns.ms” - press the Edit Patterns... button in the Options tab to open the file:

SMTD_CategoryPatterns = #(
#(#("*AB_123*","*EF_*_038*"),#(),"High_Priority",100),
#(#("*AB_*"),#(),"AB_Sequence",50),
#(#("*CD_*"),#("*CD_007_*"),"CD_Sequence",60),
#(#("*EF_*"),#(),"EF_Sequence",-1),
#(#("SP_*"),#(),"SomeProject",30),
)
  1. The first pattern specifies that files from the “AB” sequence, scene “123” and “EF” sequence, shot “038” (regardless of scene number) will be suggested as Category “High_Priority” and set Priority to 100.
  2. The second pattern specifies all AB jobs to have priority of 50 and be added to Category “AB_Sequence”. Since the special case of AB_123 has been handled in the previous pattern, this will not apply to it.
  3. The third pattern sets jobs that contain “CD_” in their name but NOT the signature “CD_007_” to the “CD_Sequence” Category and sets the Priority to 60.
  4. The fourth pattern sets jobs that contain “EF_” in their name to the “EF_Sequence” Category but does not change the priority (-1).
  5. The fifth pattern specifies that any jobs that have not matched the above rules but still start with the “SP_” signature should be added to the “SomeProject” Category and set to low priority of 30.

Note that since we used “*” instead of “SP_” in the beginning of the first 4 patterns, even if the job is not named correctly with the project prefix “SP_”, the pattern will correctly match the job name.

Custom Plugin.ini File Creation

This section covers the Alternate Plugin.ini feature in the 3ds Max Rendering rollout (under the Render tab).

Alternate Plugin.ini File

The plugin.ini list will show a list of alternative plug-in configuration files located in the Deadline repository. By default, there will be no alternative plugin.ini files defined in the repository. The list will show only one entry called [Default], which will cause all slaves to render using their own local plugin.ini configuration and is equivalent to having the Use Custom Plugin.ini file unchecked.

To define an alternative plugin.ini, copy a local configuration file from one of the slaves to [Repository]\plugins\3dsmax in the repository. Edit the name of the file by adding a description of it. For example, plugin_brazil.ini, plugin_vray.ini, plugin_fr.ini, plugin_mentalray.ini, etc. Open the file and edit its content to include the plug-ins you want and exclude the ones you don’t want to use in the specific case. The next time you launch Submit To Deadline, the list will show all alternative files whose names start with “plugin” and end with ”.ini”. The list will be alphabetically sorted, with [Default] always on top. You can then select an alternative plugin.ini file manually from the list.

Pressing the Edit Plugin.ini File button will open the currently selected alternative configuration file in a MAXScript Editor window for quick browsing and editing, except when [Default] is selected. Pressing the Browse Directory button will open Windows Explorer, taking you directly to the plug-ins directory containing the alternative plugin.ini files. Note that if you create a new plugin.ini file, you will have to restart the Submit To Deadline script to update the list.

Since the alternative plug-in configuration file is located in the Deadline Repository and will be used by all slave machines, the plug-in paths specified inside the alternative plugin.ini will be used as LOCAL paths by each slave. There are two possible installation configurations that would work with alternative plug-ins (you could mix the two methods, but it’s not recommended):

  1. Centralized Plug-ins Repository: In this case, all 3dsmax plug-ins used in the network are located at a centralized location, with all Slaves mapping a drive letter to the central plug-in location and loading the SAME copy of the plug-in. In this case, the alternative plugin.ini should also specify the common drive letter of the plug-in repository.
  2. Local Plug-in: To avoid slow 3dsmax booting in networks with heavy traffic, some studios (including ones we used to work for) deploy local versions of the plug-ins. Every slave’s 3dsmax installation contains a full set of all necessary plug-ins (which could potentially be automatically synchronized to a central repository to keep all machines up-to-date). In this case, the alternative plugin.ini files should use the LOCAL drive letter of the 3dsmax installation, and all Slaves’ 3dsmax copies MUST be installed on the same partition, or at least have the plug-ins directory on the same drive, for example, “C:”.

Auto-Detect Plugin.ini For Current Renderer

When enabled, the following operations will be performed:

  1. When you check the checkbox, the current renderer assigned to the scene will be queried.
  2. The first 3 characters of the renderer’s name will be compared to a list of known renderers.
  3. If the renderer is not on the list, the alternative list will be reset to [Default].
  4. If the renderer is the Default Scanline Renderer of 3dsmax, the alternative list will be reset to [Default].
  5. If the renderer is a known renderer, the plugin*.ini file that matches its name will be selected.

Supported renderers for auto-suggesting an alternative configuration are:

  • Brazil plugin*.ini should contain “brazil” in its name (i.e.: plugin_brazil.ini, plugin-brazil.ini, pluginbrazil_1_2.ini etc).
  • Entropy plugin*.ini should contain “entropy” in its name (i.e.: plugin_entropy.ini, plugin-entropy.ini, pluginentropy.ini, etc).
  • finalRender plugin*.ini should contain “fr” or “final” in its name (i.e.: plugin_fr.ini, plugin-finalrender.ini, plugin_finalRender_Stage1.ini etc).
  • MaxMan plugin*.ini should contain “maxman” in its name (i.e.: plugin_maxman.ini, plugin-maxman.ini, pluginmaxman001.ini etc).
  • mentalRay plugin*.ini should contain “mr” or “mental” in its name (i.e.: plugin_mr.ini, plugin-mentalray.ini, plugin_mental33.ini etc).
  • VRay plugin*.ini should contain “vray” in its name (i.e.: plugin_vray.ini, plugin-vray.ini, pluginvray109.ini etc).

Notes:

  • In 3dsmax 5 and higher, opening a MAX file while the Auto-Detect option is checked will trigger a callback which will perform the above check automatically and switch the plugin.ini to match the renderer used by the scene.
  • In 3dsmax 6 and higher, changing the renderer via the “Current Renderers” rollout of the Render dialog will also trigger the auto-suggesting mechanism.
  • You can override the automatic settings anytime by disabling the Auto-Detect option and selecting from the list manually.

FAQ

Which versions of 3ds Max are supported?

3ds Max versions 9 and later are all supported by Deadline (including Design editions). 3ds Max 7 and 8 users can still render with Deadline using the 3dsCommand plugin.

Note: Due to a maxscript bug in the initial release of 3ds Max 2012, the integrated submission scripts will not work. However, this bug has been addressed in 3ds Max 2012 Hotfix 1. If you cannot apply this patch, it means that you must submit your 3ds Max 2012 jobs from the Deadline Monitor.

Which 3ds Max renderers does Deadline support?

Deadline should already be compatible with all 3ds Max renderers, but it has been explicitly tested with Scanline, mentalRay, Brazil, VRay, finalRender, and Maxwell. If you have successfully used a 3ds Max renderer that is not on this list, please email Deadline Support.

Does the 3ds Max plugin support Tile Rendering?

Yes. See the Tile Rendering section of the submission dialog documentation for more details.

Does the 3ds Max plugin support Batch Rendering?

Yes. See the Batch Rendering section of the submission dialog documentation for more details.

When I submit a render with a locked viewport, Deadline sometimes renders a different viewport.

Prior to the release of 3ds Max 2009, the locked viewport feature wasn’t exposed to the 3ds Max SDK, so it was impossible for Deadline to know whether a viewport is locked or not. Now that the feature has been exposed, we are working to improve Deadline’s locked viewport support. However, in the 3ds Max 2009 and 2010 SDK, there is a bug that prevents us from supporting it completely (Autodesk is aware of this bug).

Until this bug is resolved, we can only continue to recommend that users avoid relying on the locked viewport feature, and instead ensure that the viewport they want to render is selected before submitting to Deadline.

When I submit a render job that uses more than one default light, only one default light gets rendered.

The workaround for this problem is to add the default lights to the scene before submitting the job to Deadline. This can be done from within 3ds Max by selecting Create Menu -> Lights -> Standard Lights -> Add Default Lights to Scene.

Is it possible to submit MAXscripts to Deadline instead of just a *.max scene?

Yes. Deadline supports MAXscript jobs from the Scripts tab in the submission dialog.

Does Deadline’s custom interface for rendering with 3ds Max use workstation licenses?

No. Deadline’s custom interface for rendering with 3ds max does not use any workstation licenses when running on slaves unless you have the Force Workstation Mode option checked in the submission dialog, a workstation license will be used.

Slaves are rendering their first frame/tile correctly, but subsequent frames and render elements have problems or are rendered black.

Try enabling the option to Restart Renderer Between Frames in the submission dialog before submission, or in the job properties dialog after submission. We have found that this works 99% of the time in these cases.

When rendering with VRay/Brazil, it appears as if some maps are not being displayed properly.

Try enabling the option to Restart Renderer Between Frames in the submission dialog before submission, or in the job properties dialog after submission. We have found that this works 99% of the time in these cases.

Tile rendering with a Mental Ray camera shader known as “wraparound” results in an incorrect final image. How can I fix this?

This is another situation where enabling the option to Restart Renderer Between Frames in the submission dialog seems to fix the problem.

When tile rendering with VRay, I get bucket stamps on the final image.

Try rendering the irradiance map first in 1 pass at full resolution. Then perform your tile render on a scene that reads the irradiance map created at full resolution. If creating the map at full resolution is impossible then you can make it in the tile, but you need to make sure the tiles are overlapping each other and make sure to use the irrandiance map method that appends to the map.

In short: you create the map first then do the final render in tiles.

Can I Perform Fume FX Simulations With Deadline?

Yes. To do so, follow these steps:

  1. Your render nodes need to have Fume FX licensed properly, either with a “full” or “simulation” licenses. This requirement is the same if you were rendering with Backburner.
  2. Before you launch the 3dsmax submission script, make sure that the Fume FX NetRender toggle button is “ON” in the Fume FX options in 3dsmax.
  3. Before you submit the job, make sure the “Disable Progress Update Timeout” option is enabled under the Render in the 3dsmax submission window.

Error Messages And Meanings

This is a collection of known 3ds Max error messages and their meanings, as well as possible solutions. We want to keep this list as up to date as possible, so if you run into an error message that isn’t listed here, please email Deadline Support and let us know.

Note that when an error occurs in a Max render, we parse the Max render log (Max.log) for any messages that might explain the problem and include them in the error message. Some examples are:

  • ERR: An unexpected exception has occurred in the network renderer and it is terminating.
  • ERR: Missing dll: BrMaxPluginMgr.dlu
  • ERR: [V-Ray] UNHANDLED EXCEPTION: Preparing ray server Last marker is at .\src\vrayrenderer.cpp

3dsmax startup: Error getting connection from 3dsmax: 3dsmax startup: Deadline/3dsmax startup error: lightningMax*.dlx does not appear to have loaded on 3dsmax startup, check that it is the right version and installed to the right place.

You likely need to install the appropriate Visual C++ Redistributable package, which can be done as part of the Deadline Client installation.

image30

Could not delete old lightning.dlx... This file may be locked by a copy of 3ds max

Usually this is because a 3dsmax.exe process didn’t quit or get killed properly. Looking in task manager on the slaves reporting the message for a 3dsmax.exe process and killing it is the solution.

3dsmax crashed in GetCoreInterFace()->LoadFromFile()

There are a number of things that can be tried to diagnose the issue:

  • Try opening the file on a machine where it crashed. You may already have done this.
  • Try rendering a frame of it on a machine where it crashed, using the 3dsmaxcmd.exe renderer. This will make it open the file in slave mode and possibly give an idea of what’s failing.
  • Submit the job to run in workstation mode. In workstation mode there’s often more diagnostic output. There’s a checkbox in the submission script for this.
  • If you’re comfortable sending us the .max file which is crashing, we’d be happy to diagnose the issue here.
  • Try stripping down the max file by deleting objects and seeing if it still crashes then.

Trapped SEH Exception in CurRendererRenderFrame(): Access Violation

An Access Violation means that when rendering the frame, Max either ran out of memory, or memory became corrupted. The stack trace in the error message usually shows which plugin the error occurred in. If that doesn’t help track down the issue, try stripping down the max file by deleting objects and seeing if the error still ocurs.

3dsmax: Trapped SEH Exception in LoadFromFile(): Access Violation

An Access Violation means that when loading the scene, Max either ran out of memory, or memory became corrupted. The stack trace in the error message usually shows which plugin the error occurred in. If that doesn’t help track down the issue, try stripping down the max file by deleting objects and seeing if the error still ocurs.

RenderTask: 3dsmax exited unexpectedly (it may have crashed, or someone may have terminated)

This generic error message means that max crashed and exited before the actual error could be propagated up to Deadline. Often when you see this error, it helps to look through the rest of the error reports for that job to see if they contain any information that’s more specific.

RenderTask: 3dsmax may have crashed (recv: socket error trying to receive data: WSAError code 10054)

This generic error message means that max crashed and exited before the actual error could be propagated up to Deadline. Often when you see this error, it helps to look through the rest of the error reports for that job to see if they contain any information that’s more specific.

3dsmax startup: Error getting connection from 3dsmax: 3dsmax startup: Deadline/3dsmax startup error: lightningMax*.dlx does not appear to have loaded on 3dsmax startup, check that it is the right version and installed to the right place.

This error is likely the side effect of another error, but the original error wasn’t propagated to Deadline properly. Often when you see this error, it helps to look through the rest of the error reports for that job to see if they contain any information that’s more specific.

3dsmax startup: Max exited unexpectedly. Check that 1) max starts up with no dialog messages and in the case of 3dsmax 6, 2) 3dsmaxcmd.exe produces the message ‘Error opening scene file: “”’ when run with no command line arguments

This message is often the result of an issue with the way Max starts up. Try starting 3ds Max on the slave machine that produced the error to see if it starts up properly. Also try running 3dsmaxcmd.exe from the command line prompt to see if it produces the message ‘Error opening scene file: “”’ when run with no command line arguments. If it doesn’t produce this message, there may be a problem with the Max install or how its configured. Sometimes reinstalling Max is the best solution.

The 3dsmax command line renderer, ...\3dsmaxcmd.exe, hung during the verification of the 3ds max install

Try running 3dsmaxcmd.exe from the command line prompt to see if it pops up an error dialog or crashes, which is often the cause of this error message. If this is the case, there may be a problem with the Max install or with how it is configured. Sometimes reinstalling Max is the best solution.

3dsmax: Failed to load max file: ”...”

There could be many reasons my Max would fail to load the scene file. Check for ERR or WRN messages included in the error message for information that might explain the problem. Often, this error is the result of a missing plugin or dll.

Exception: Failed to render the frame.

There could be many reasons my Max would fail to render the frame. Check for ERR or WRN messages included in the error message for information that might explain the problem.

An error occurred in StartJob(): 3dsmax: Trapped SEH Exception in LoadFromFile(): Integer Divide By Zero

Process: C:\Program Files\Autodesk\3ds Max 2009\3dsmax.exe

Module: C:\Program Files\Autodesk\3ds Max 2009\stdplugs\AutoCamMax.gup

There are known issues with the new steering wheel plugin (AutoCamMax.gup) in 3ds Max 2009. Upgrading to the latest 3ds Max 2009 service pack or disabling the plugin has been known to fix this problem. This is from Autodesk:

The AutoCam feature (Autodesk® ViewCube® and SteeringWheels) can cause noticeable performance degradation. If you are working with complex scenes that cause your machine to run out of resources, it is strongly recommended that you fully disable the AutoCam plug-in.

To disable the AutoCam plug-in

  1. Close Autodesk 3ds Max 2009.
  2. In Windows® Explorer, navigate to the Autodesk 3ds Max 2009 root folder. The default location of this directory is C:\Program Files\Autodesk\3ds Max 2009.
  3. Open the \stdplugs folder.
  4. Locate the AutoCamMax.gup file.
  5. Right-click the file. On the shortcut menu, click Rename.
  6. Rename the file, AutoCamMax.gup.bak.
  7. Restart Autodesk 3ds Max 2009.

Note: To enable this feature rename the file, AutoCamMax.gup.