SILENTIUM!

6 votes
Version: 
1.0a

 Summary:
Prevents excessive popup dialogs ( object xref system units mismatch, missing plugins ) during scene load. Especially usefull for 3ds Max 2016+, as xref'd scenes with different system unit settings now open a popup dialog for each file.

Additional Info: 

HISTORY:
Version:  V1.0a - DC20160217, fixed installer to install to #userstartupscripts ( this should fix Win 10 install errors )
Version:  V1.0 - Initial Release, DC20160217

PURPOSE:
Since 3ds Max 2016's new xref Object features, scenes containing xrefobject references featuring different system unit settings, can cause excessive dialogs and userinput requests to appear during scene load.
Additionally, every Scene- or Object Xref file loading can cause an additional "Missing Plugin" dialog to appear
This script fixes the issue by suppressing those dialogs after they appeared once per scene load (default behavior)

MAX VERSION REQUIREMENT:
developed for 3ds Max2016 and above, though the script works on previous Max versions

INSTALLATION:
Drag and drop the installer package into the viewport and follow the instructions. Restarting  3ds Max should NOT be necessary, but if the script does'nt seem to work, simply restart 3ds Max. After successfull installation/3ds Max relaunch, you should see the following statustext being printed in the Listener:  "### SILENTIUM!: Scene loading callbacks installed...". To uninstall, simply drag&drop the installer package onto the 3ds Max viewport again and press "Uninstall"

USAGE:
The scripts works after installation without any further user interaction
Additionally it provides the following commands ( accessable via Maxscript listener )

  •     Silentium.Activate()        ... Activates the processing of relevant dialogs on Sceneload
  •     Silentium.Deactivate()    .... Deactivates the processing
  •     Silentium.Activate() .... provides some optional parameters ( defaults are CAPITALIZED )
  •         NeverPrompt: true | FALSE     ... if set to true,no unit mismatch/plugin missing prompt will ever appear
  •         RescaleMismatched: TRUE | false    ... rescale mismtached Xrefobjects when NeverPrompt is active 
  •         Verbose: TRUE | false      ... print log messages to listener, when dialgos are processed during a sceneload

USER INTERFACE, CONFIGURATION OPTIONS:
The script does'nt provide a user interface to configure defaults, to adjust those, change the default values in the beginning section of the script. Defaults options are listed right there, followed by a short description

For convenience, several ""SILENTIUM!:..." - user actions are created in the "Customize UI dialog->Spacefrog Tools" Category. A SILENTIUM! menu is created and placed in your main menu bar during the script's installation to customize, simply assign the user actions in the UI configuration dialog to your preferred menu, toolbar or keyboard shortcut

TIP: when using a toolbar or menu entry for one of the options, the current state of the option is directly visible in the UI

Version Requirement: 
3ds Max 2016+ recommended, tested with Max 2013,2014,2015

Comments

Comment viewing options

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

max 2020

Hello,

Is there any update for max2020?

Thanks for your work!

firzt001's picture

Is there a way to make this work in max 2020 and beyond?

I am not able to make it work, does anybody know a workaround?

Rokas's picture

2018 2019

This is super useful script. Too bad it does not work in max versions 2018-2019 ;(

fajar's picture

-- maybe the installation

-- maybe the installation proccess need to check is folder writable, in case you re not admin
 
--for max 2010 below till max 9 , I think
fn isFolder folder: =
	(
		local state =  false  
		if (paths!=unsupplied and doesFileExist folder) do  
			(
				local netFile =  dotnetClass "System.IO.File"
				local fileAttr = netFile.GetAttributes folder
				local strArr = filterString (fileAttr.ToString()) ","	
				if (strArr.count!=0 ) do 
					(
						if ((stricmp strArr[1] "Directory")== 0) do (state=true )
					)
			)
		state
	)
 
	fn isWritableFolder folder: =  
	(
		local fail =false 
		local thePath =  dotnetClass "System.IO.Path"
		local file =  dotnetClass "System.IO.File"
		local fileOption = dotnetClass "System.IO.FileOptions"
 
		if (folder==unsupplied ) do return fail 
		if (isFolder paths:folder) do 
		(
				try 
				(
					fs =file.Create (thePath.Combine #(folder,thePath.GetRandomFileName())) 1 fileOption.DeleteOnClose
					fs.Dispose();fs.close()			
					fail = true 	
				)
				catch ()
		)
		fail
	)
--- or for max 2010 above 
--- iswriteable folder function
 
nnq2603's picture

Work greatly on 2014, but a question

A question remaining is is there similar method apply for Gamma miss-match dialogue (with default choose adopt file gammar anyway)? Thanks and have a nice day.

spacefrog's picture

Installer problems on Windows 8 / Windows 10 fixed

I just released a new version which now correctly installs in to the user's "scripts/startup" folder, instead of the general "scripts/startup" folder inside the main 3ds Max application directory. The latter caused installation errors on Windows 10 ( and most probably Windows 8 too ). So this should be fixed now

spacefrog's picture

I think it should work with

I think it should work with 3ds Max 2017 too
Did you test it and noticed a problem ?

davegmac's picture

2017

Hi, Very useful script.

do you have a version that works with max 2017?

Thanks,

Comment viewing options

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