Remove NoteTracks from 3Ds Max Scenes
Recently, I have been struggling with some weird issues with 3Ds Max, mainly some stupidly long load and save times on very small files. Even if I merged in the objects into a completely empty file, the problem would occur on the new file. This was not only a problem for opening and saving files, but also it meant some files were timing out in Backburner, so I had to render locally.
The other problem was that 3Ds Max would not close properly, and I would have to kill 3Ds Max via the Task Manager, not ideal at all!
Initially I suspected that maybe there were a corrupt piece of geometry, but deleting the entire contents of the file, and saving would make no difference. I also tried changing the save location, different drives, moving maps, merging into a new scene and pretty much every other trick I could think of. I then suspected it might be a RAM issue, so I upgraded from 8gb to 16gb, and although this helped with the loading of the files, it made no difference to the saving or rendering of the files.
After sometime searching the web, it appeared that I wasn’t alone, and although it wasn’t a common problem, some other people were having the same hard time as myself!
What the problem actually turned out to be was that my files had millions of NoteTracks hidden inside them. I have no idea how they were generated, but I know I didn’t put them there! The easiest way to check for note tracks I have found is to run the Cleaner2 script from http://www.scriptspot.com/3ds-max/scripts/cleaner
When you run the script, it will show you how many NoteTracks, and other info which can probably be “cleaned”. You can click “Clean all selected” which will remove the NoteTracks and other info, but I have found this to be very slow, especially if you have over 10 million NoteTracks.
The other solution I came across was found here on the CG Architect forum. Using 2 lines of code the NoteTracks are very quickly removed. To do this open the MAXScript Listener, and type / copy and paste -trackViewNodes[#Max_MotionClip_Manager].track = copy trackViewNodes[#Max_MotionClip_Manager].track
Hit enter, then typegc()
And hit enter again. Now if you run the Cleaner2 script you should see you have no NoteTracks in your file.
A word of warning, only run this code / script if you are sure you wish to delete all NoteTracks. NoteTracks are used in animations, and probably other areas of 3Ds Max, so be careful, and only “clean” your file when you are sure you are not deleting or destroying something that you actually need!
I have put this code inside a script file in-case anyone wants to add it to a short-cut or button.
Click here to download. Once downloaded please open the file in Notepad or a similar program and read the disclaimer before running the script.
If you have found this useful, please let me know!