Batch Exporter

6 votes
Version: 
2.1
Date Updated: 
07/07/2022
Author Name: 
Benjamin Boscher

Here is the link to the documentation.

This is my custom batch exporter, inspired by Jos Balcaen's Batch Export/Import, I needed some extra features so I created my own.
Perfect for exporting a lot of objects quickly.
Any meshes linked to a point helper or a dummy are merged together and exported as a single object, that way you can export objects in a non-destructive way, keeping instances, etc.
If you have any feedback, feel free to contact me at [email protected] or in the comment section down here ;)

Update 26/06/2017, Version 1.7:

- Added the "export as a single object" feature.
- Added a bunch of formats.
- Added a "Help" button that opens the documentation.
- The script now runs faster.

Update 01/09/2017, Version 1.7.2:

- Added VRSCENE format.

Update 30/09/2019, Version 1.8:

- You can now export objects that are parented to a point helper or a dummy as a single object, its name and pivot point are respectively the helper's name and location.
- Removed "Export As A Single Object" button.
- No longer clear the selection after export.
- Everything is now saved in a .ini file instead of in each maxfile.
- Fixed the bug where the script would export as .MAX when selecting .OBJ
- Fixed the bug that used to crash max when you undo just after exporting something.
- Added "Show Prompt" checkbox to set wether or not you want to see the dialog before exporting (that depends on the selected format).
- Added MAX format.
- Big overall cleanup and refactoring in the code.

Update 07/02/2020, Version 1.8.1:

- Fixed the bug where the Collision Preffix text would be displayed in Name Preffix.
- Fixed the crash that could occur when the Collision Preffix text is empty.

Update 28/03/2020, Version 1.8.3:

- Fixed the bug where the collisions won't get exported when parented to a point or dummy.
- Added the "Merge All Nodes" feature that allowes you to choose weither or not to merge objects before exporting (only affects objects parented to points or dummies).

Update 24/02/2021, Version 1.9:

- Fixed the "Export plugin not found" bug when exporting as .MAX format.
- Now handle "sub helpers" in the hierarchy: no longer leave duplicate helpers when having some (dummies or point helpers) in the hierarchy.
- Now right clicking the "Browse" button (the 3 dots) no longer purge the whole list but only remove the currently selected path.
- Now clicking the "Browse" button open the selected path as initial directory (if there is one).
- Now if nothing is selected when you click "Export Selection" it will remember the selection you exported previously and export it again.
- Fixed the bug that prevented you from exporting objects containing "." (a dot) in their name.

Update 13/02/2022, Version 2.0:

- Fixed VRSCENE export that was broken since previous update.
- Removed the "Show dialog after export" feature, because who cares ? XD
- Addded the possibility to bind a shortcut to export selection instead of clicking the button every time.
- Now objects that have an underscrore "_" at the beginning of their name are ignored (not exported) when parented to a point or a dummy.

Update 07/07/2022, Version 2.1:

- Added the possibility to export in the folder where the current max file is located.
- Fixed a bug that could happen in recent 3dsmax versions (2022, 2023) where parts of the exported meshes are missing.

Additional Info: 

How it works

• Just drag n drop the .ms file into the 3DS Max viewport

• Or drag n drop the .mzp file into the 3DS Max viewport, and then in Customize > Customize user interface, you'll find this script under the N00BY category

• Set the options as you need, select an export path, etc...

• Select all the objects you want to export, then click "Export selection"

• You can bind a keyboard shortcut to "Custom Batch exporter shortcut" to export faster, instead of clicking the button everytime.
The window of the script must be open for the shortcut to work.

General informations

• All options are saved. This means all the changes you make in the checkboxes, text fields and the drop down list are remembered when reopening the script.

•Meshes that are parented to a point or a dummy have their transform reseted before getting merged then the merged is exported using the its root's transform (point or dummy helper).
Which mean that if you untick the "Reset XForm" checkbox the mesh is eported using its helper's pivot point as local pivot, no matter the helper's rotation.

•When exporting objects with collision:
- Objects that are parented to a point helper or a dummy need to have their collision meshes parented to that same helper.
- If an object is not parented to a point or a dummy do not select the collision meshes when exporting, select only the objects themselves. (Otherwise the collision meshes will be exported separately).

•When exporting as .VRSCENE you have to set VRay as the renderer before proceeding. (Rendering -> Render Setup)

_____________________________

Only tested on 3DSMax 2015, 2016, 2018, 2021, 2022 and 2023.

_____________________________

Version Requirement: 
2015 - 2016 - 2018 - 2021 - 2022 - 2023, but it should work in any version.

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
DaveFace's picture

GLTF support

Still finding this script valuable after several years!

Now that Max supports GLTF would it be possible to add GLTF to the export options? I understand it goes through a slightly different export path so may not be trivial.

SMFoged's picture

Export a named layer and any sublayers

Instead of exporting selected, I suggest a checkmark that changes mode to export layer+sublayers.
This requires a UI element where you select the layer to be exported.

Makes sense?
Thanks Stephen

More ideas here.
https://forums.autodesk.com/t5/3ds-max-ideas/game-exporter-evolution/idi...

Stephen Meldal Foged
Max User since 1997
Ultimate player since 2001 />
Copenhagen - Denmark

N00BYZOR's picture

Update 2.1 !

Hey !

Now you can export directly in the folder where the source file is (the currently opened max file).

Cheers,
Ben

N00BYZOR's picture

Salut :) Désolé pour la

Salut :)
Désolé pour la réponse tardive.
Je ne connais pas du tout datasmith, donc pour l'instant c'est pas trop dans mes priorités dsl

N00BYZOR's picture

Update 2.0 !

Hey !

Version 2.0 is released.
Now you can export using a keyboard shortcut maong some other updates (see changelog).

Cheers
Ben

Tokamak's picture

Export to Unreal file format?

Bonjour Ben,
Question: Ca serait compliqué pour toi d'ajouter un export vers .udatasmith?
Surtout avec la rotation de 90° des fbx par rapport aux .udatasmith... Si on pouvait se passer complètement des exports en FBX et simplifier le pipe vers UE , ce serait top pour les utilisateurs de Unreal Engine & Twinmotion!

todor's picture

Looks great, thank you!

Looks great, thank you!

pedroamorim's picture

Love the script! Would it be

Love the script!
Would it be possible to add a an export macroscript?
This way it would be possible to setup a shortcut for the export function and not have to open the dialog every time we want to export something.
Huge thanks!

N00BYZOR's picture

Updated (v1.9)

Hi everyone,

Thank you for your comments and feedback.
I've just released version 1.9 fixing the .MAX bug and bringing various improvements (see changelog).
Certain things some of you mentioned are not implemented yet but I'm taking note for further updates.

Cheers,
Ben

CyrilGendrot's picture

update ?

On the exporter, it lacks functionality that could make it even better.
I think it might be interesting to develop some additional functionality to easily and quickly export exactly what you want. Because today, the export will export all the objects that share the same parent, it is practical but not in all cases. An option to export only what is selected, that would be great.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.