Posted on Leave a comment

Cleaning and sanitizing broken or bloated 3ds Max scenes

Cleaning & sanitizing broken or bloated 3ds Max scenes
Cleaning & sanitizing broken or bloated 3ds Max scenes

Understanding what “scene cleanup” really means in 3ds Max

Most artists only start thinking about scene cleanup when something goes wrong.

A file that suddenly grows in size, takes far longer to open or save than it used to, throws warnings without a clear explanation, or becomes increasingly unstable over time is often described as “heavy” or “slow”. The instinctive reaction is usually to blame geometry, textures, or render settings.

In practice, many of these problems have a different origin: internal scene contamination.

Over time, a 3ds Max scene accumulates invisible data that has nothing to do with what you see in the viewport. Legacy nodes left behind by deleted objects, callbacks registered by scripts that are no longer present, corrupted references from CAD or BIM imports, obsolete modifiers, broken links to external assets, embedded scene scripts, or malformed data blocks can all live quietly inside a file.

Deleting visible objects does not remove this data. Neither does collapsing stacks or hiding layers. The scene may still appear functional, but its internal structure slowly degrades.

This is what scene sanitization is about: restoring the structural health of a 3ds Max file.

It is important to be clear about scope. Scene cleanup is not viewport optimization, polygon reduction, or proxy management. Those are separate problems, with separate solutions. This article focuses exclusively on identifying and removing hidden or problematic data that compromises scene stability and long-term usability.

Different layers of scene contamination

One of the reasons scene cleanup is confusing is that problems tend to overlap. A single scene can suffer from multiple issues at once, but they live at different layers.

At one level, there is internal scene data: nodes, controllers, callbacks, legacy references, or corrupted objects that exist entirely inside the file. Tools that operate at this level attempt to sanitize the scene structure itself.

At another level, there are external dependencies: textures, proxies, XRefs, and other assets referenced by file paths. Broken or outdated paths can dramatically slow down scene loading and trigger warnings, even if the internal data is otherwise clean.

Finally, there are structural integrity issues: malformed data introduced by CAD/BIM imports, incompatible plugins, or malicious scripts. These issues often require diagnosis before cleanup, because blindly deleting data can make things worse.

The tools covered in this article each address a different layer of this problem. Understanding that distinction is essential to choosing the right one.

A curated selection of tools for scene cleanup and sanitization

The following tools are not presented as a direct comparison between similar solutions. Instead, they form a curated selection of the most effective tools available for cleaning and sanitizing 3ds Max scenes, each addressing a different layer of the problem.

The selection is based on a set of practical criteria that matter in real production environments: how clearly each tool is focused on a specific type of issue, what it actually does to the scene in practice, how safe and predictable its behavior is, how much technical understanding it requires, its compatibility with modern versions of 3ds Max, and its licensing model.

Rather than ranking these tools, the goal is to clarify when and why each one makes sense, so artists can choose the right approach based on the nature of the problem they are facing.

Prune Scene – by 3D Ground

Primary focus

Removal of scripted viruses and accumulated scene garbage.

What it does in practice

Prune Scene is primarily an antivirus and garbage-cleaning tool for 3ds Max scenes. Its core purpose is to detect and remove scripted malware, malicious callbacks, and residual data that can accumulate invisibly over time.

In practice, the tool targets known scripting viruses, invalid or missing objects, obsolete custom attributes, broken references to plugins or bitmaps, empty layers, and other forms of internal junk that contribute to scene bloat or instability. By removing this accumulated garbage and malicious code, Prune Scene can significantly reduce scene file size and, in many cases, improve saving times and overall stability.

Key features

  • Detection and removal of common 3ds Max scripting viruses
  • Cleanup of accumulated internal garbage and invalid scene data
  • Removal of missing or broken references (bitmaps, plugins, effects)
  • Optional batch processing and recovery tools under license

Ease of use

Moderate. The interface is straightforward, but the number of cleanup options requires basic understanding of what is safe to remove in a given context.

Strengths

Prune Scene is particularly effective in scenarios where scenes are suspected to be infected by scripting viruses or polluted by residual data from external sources. Its active protection and batch-cleaning capabilities make it valuable in shared environments and legacy projects.

Limitations and risks

Cleanup operations can be aggressive. While this is often necessary for virus removal, changes may be destructive if applied without care. Working on backups and validating results is essential. Advanced recovery and batch features require a paid license.

Compatibility

Modern versions of 3ds Max.

Price and licensing

Paid license at a very affordable price. Shareware version is also available.

Cleaner – by Andreas Meissner

Primary focus

General-purpose internal scene cleanup.

What it does in practice

Cleaner is a collection of MaxScript routines designed to remove common forms of scene residue left behind during everyday work. It targets practical, surface-level issues such as empty or unused layers, obsolete helpers, invalid controllers, leftover animation data, and various elements that no longer serve a purpose after heavy editing, importing, or iterative changes.

Cleaner does not attempt deep scene recovery or diagnostics. Instead, it provides a broad, pragmatic sweep of frequent cleanup tasks that many artists would otherwise perform manually or ignore entirely.

Key features

  • Multiple cleanup routines covering common scene elements
  • Simple interface grouping different cleanup actions
  • Fully open-source MaxScript

Ease of use

Moderate. While the interface is simple, the impact of individual cleanup actions is not always obvious. Users benefit from understanding what each operation affects before applying it broadly.

Strengths

Cleaner remains useful as a lightweight, no-cost cleanup tool for routine scene maintenance. Its open-source nature makes it valuable for technical users who want transparency or wish to adapt parts of the script to their own workflows.

Limitations and risks

The script has not been actively maintained for several years and offers no official support. Some cleanup operations can be destructive if used indiscriminately, particularly on complex or legacy scenes. Thorough testing and backups are strongly recommended.

Compatibility

Works in modern versions of 3ds Max, though manual installation and verification are required.

Price and licensing

Free (open-source MaxScript).

Tools for cleaning and sanitizing 3ds Max scenes - Prune Scene, Cleaner

ECleaner – by Ehab Kandil Designs

Primary focus

Cleanup and correction of external asset paths.

What it does in practice

ECleaner does not sanitize internal scene data. Instead, it focuses on identifying, fixing, and normalizing file paths for external assets such as textures, proxies, XRefs, and other referenced files.

Scenes that have been moved between computers, studios, or servers often contain broken or outdated paths. Each missing reference forces 3ds Max to search for files during load, significantly increasing opening times and generating warnings. ECleaner addresses this specific but very common problem.

Key features

  • Detection and correction of broken asset paths
  • Batch processing of external references
  • Lightweight and focused design

Ease of use

High. The tool is straightforward and designed around a clear, narrow task.

Strengths

ECleaner is highly effective at reducing scene load times caused by missing assets. It is free, simple to use, and solves a problem that many artists misattribute to scene complexity.

Limitations and risks

ECleaner does not remove internal scene junk, corrupted data, or legacy nodes. It should be seen as complementary to internal cleanup tools, not a replacement.

Compatibility

Modern versions of 3ds Max.

Price and licensing

Free.

Forensic – by SiNi Software

Primary focus

Scene inspection, diagnostics, and corruption detection.

What it does in practice

Forensic is designed to analyze a scene before attempting cleanup. It inspects internal data structures, imported CAD/BIM content, embedded scripts, and potentially malicious or incompatible elements. Rather than aggressively deleting data, it provides reports that help identify where problems originate.

This makes Forensic particularly useful for scenes that crash, refuse to open, or behave erratically, where blind cleanup could cause further damage.

Key features

  • Deep inspection of scene structure
  • Detection of corrupted or potentially malicious data
  • Analysis of problematic imports and legacy content
  • Optional extended relinking capabilities when used within the IgNite Collection

Ease of use

Moderate to advanced. The interface is accessible, but interpreting results requires some technical understanding of 3ds Max internals.

Strengths

Forensic excels at diagnosis. It allows users to understand what is wrong with a scene before deciding how to fix it, which is critical in professional or high-risk environments.

Limitations and risks

The free version includes banner advertising and is limited in extended functionality. Advanced features such as relinking a wide range of external file types require the IgNite Collection, where Forensic integrates with SiNi’s Unite plugin. As a diagnostic tool, it is not intended to replace dedicated one-click cleanup scripts for routine maintenance.

Compatibility

Modern versions of 3ds Max.

Price and licensing

Free version available with limited functionality. Full functionality is included as part of the paid SiNi IgNite Collection.

Tools for cleaning and sanitizing 3ds Max scenes - ECleaner, Forensic

Native workflows and manual cleanup in 3ds Max

Before relying on third-party tools, it is worth acknowledging that 3ds Max itself provides several native workflows for diagnosing and mitigating scene-related issues. While these workflows are rarely sufficient on their own for deeply contaminated or corrupted files, they form an important first line of defense and, in some cases, can resolve performance problems entirely.

Autodesk’s own technical guidance highlights several common causes of slow scene opening and saving times, including missing external assets, network paths that are no longer accessible, excessive callbacks, outdated references, and heavy scene states. Many of these issues can be identified or partially addressed using built-in tools such as the Asset Tracking dialog, Scene Explorer, XRef management, Layer Manager, and careful use of Merge workflows instead of incremental Save As chains.

Manual cleanup techniques — such as merging clean geometry into a new empty scene, rebuilding materials rather than copying them blindly, or selectively re-linking external assets — remain some of the safest and most transparent ways to restore scene health. They are slower and require more discipline, but they give the artist full control over what is kept and what is discarded.

However, these native and manual approaches have clear limits. They offer little visibility into low-level scene contamination, hidden legacy data, or malformed structures introduced by scripts, plugins, or complex imports. Once a scene reaches that stage, manual workflows alone become inefficient or unreliable, which is precisely where specialized cleanup and diagnostic tools become valuable.

Choosing the right approach

Scene cleanup is rarely about finding the “best” tool. It is about identifying the layer at which the problem exists.

Native workflows and manual cleanup should always be considered first. They are safe, transparent, and often sufficient for resolving issues related to missing assets, bloated save histories, or poorly managed references. They also provide a clearer understanding of how and why a scene has degraded over time.

When problems persist beyond what manual methods can realistically address, third-party tools become essential. Internal scene bloat and legacy data call for sanitization tools such as Prune Scene or Cleaner. Broken external references require a focused solution like ECleaner. Unstable or corrupted scenes benefit from diagnostic tools like Forensic before any destructive action is taken.

In many real-world cases, these approaches are not mutually exclusive. The most robust workflows combine careful manual practices with targeted tools, always supported by versioned backups and incremental testing.

Final thoughts

Scene cleanup is preventative maintenance. When ignored, problems accumulate quietly until they become expensive to fix.

Understanding what each tool actually does — and what it does not — is far more important than running every cleanup script available. A clean scene is not just smaller or faster; it is predictable, stable, and easier to maintain over time.

Sources and references

The information in this article is based on a combination of official documentation, developer-provided descriptions, and long-term practical use of 3ds Max in production environments. Key references include:

  • Autodesk Support3ds Max scene file takes a long time or is slow to open: official guidance on common causes of slow loading and saving, asset management, and native diagnostic workflows.
  • Prune Scene documentation and product description: feature set, virus removal capabilities, and cleanup scope as described by the developer.
  • Cleaner (ScriptSpot): original script documentation, user feedback, and inspection of the open-source MaxScript code.
  • ECleaner documentation: tool focus and behavior related to external asset path cleanup.
  • SiNi Software – Forensic documentation and official video material: tool scope, diagnostic capabilities, and differences between the free version and the IgNite Collection integration.

Where appropriate, conclusions are informed by real-world production experience and community-reported behavior rather than marketing claims.

Share
Posted on Leave a comment

9 Helpful Free 3ds Max Scripts from ArchVizTools

When you work with 3ds Max every day—especially in Architectural Visualization—small tools can make a huge difference in speed, clarity, and overall workflow efficiency.
Today, I’m sharing a curated list of nine free scripts from ArchvizTools, one of the most active developers in the ArchViz scripting community. These tools are lightweight, easy to install, and extremely practical for everyday production work.

Each script is compatible with 3ds Max 2018 and higher, and all of them can help you save time, clean messy files, create better-looking scenes, or automate tasks that usually require several manual steps.

Here’s the full list, along with descriptions and links.

1. Layer Manager Extension

A practical enhancement for the standard 3ds Max Layer Manager.
This script helps you keep large scenes organized by expanding the default layer tools and making it easier to manage complex layer structures.

If you work with heavy ArchViz files, imported CAD drawings, or multi-asset scenes, a better layer workflow quickly becomes essential.

Download on Gumroad: Layer Manager Extension – ArchvizTools

2. Fire Flame Generator

This tool automatically creates flame, fire, or smoke-like shapes using procedurally generated splines.
It’s perfect for:

  • fireplaces
  • candles
  • torches
  • outdoor fire pits
  • atmospheric elements for interior scenes

You get quick, customizable fire effects without relying on heavy simulations or particle systems.

Download on Gumroad: Fire Flame Generator – ArchvizTools

3. Carpet Generator

A surprisingly powerful script that generates realistic carpets and rugs using parametric controls.
You can adjust:

  • dimensions
  • pile height
  • density
  • pattern
  • color
  • and more

Ideal for interior designers, ArchViz artists, and anyone who regularly builds styled interior sets.

Download on Gumroad: Carpet Generator – ArchvizTools

4. Baluster Picker

If your scenes include stairs, balconies, fences, corridors, or classical architecture, this script will save you time.
Baluster Picker lets you quickly browse and insert baluster models directly into your scene.

It’s especially helpful in large architectural projects where railings and decorative elements are repeated dozens of times.

Download on Gumroad: Baluster Picker – ArchvizTools

5. Spotlight Generator

A fast and convenient generator for standard and IES-based spotlights.
Great for lighting:

  • living rooms
  • kitchens
  • galleries
  • product renders
  • detail-oriented interior designs

This script helps you set up lighting structures quickly, then fine-tune them afterward with your preferred render engine.

Download on Gumroad: Spotlight Generator – ArchvizTools

6. Quick Light Generator

A complementary lighting tool that focuses on fast creation of general lights.
Perfect when you need to:

  • set up rough lighting for quick previews
  • iterate multiple lighting moods
  • prototype a scene before final materials and rendering

It’s simple, clean, and a good addition to your light setup toolbox.

Download on Gumroad: Quick Light Generator – ArchvizTools

7. Clay Mode Advanced

If you love “clay renders” or ZBrush/Mudbox-style matcaps, this script is for you.
Clay Mode Advanced applies a configurable clay material to your entire scene or selection using a library of 30 included matcaps.

Use it to:

  • evaluate shapes and proportions
  • create modeling previews
  • generate stylized clay renderings
  • speed up shading-free visualization

Excellent for modeling, look-development, or creating clean previews for clients.

Download on Gumroad: Clay Mode Advanced – ArchvizTools

8. FlatZ

FlatZ is a small but very effective tool—especially when working with CAD files imported into 3ds Max.
It flattens the vertices of shape objects, fixing common problems like:

  • uneven elevations
  • misaligned shapes
  • geometry that should be perfectly flat but isn’t

If you’ve ever imported a messy DWG and found that splines are not perfectly aligned, this script fixes the issue instantly.

A single click, and everything is flattened cleanly.

Download on Gumroad: FlatZ – ArchvizTools

9. PolyCount

PolyCount scans your entire scene, finds every geometric object, and displays a list sorted by polygon count from highest to lowest.

The script allows you to see which assets are consuming the most resources, detect heavy or unoptimized models, and instantly select the problematic objects.

From there, you decide whether to reduce the mesh, convert to proxy, or replace the asset.

It’s simple but surprisingly effective for optimization—especially helpful when you inherit a messy file from someone else.

Download on Gumroad: PolyCount – ArchvizTools

Final Thoughts

These nine free scripts from ArchvizTools are excellent additions to any 3ds Max ArchViz workflow.
Some help you clean up messy scenes, others speed up lighting or modeling tasks, and some are perfect for quickly improving overall productivity.

If you frequently work with large architectural projects—or if you simply enjoy having smart tools to streamline your daily work—these free scripts are definitely worth downloading and testing.

Feel free to try them out, mix them with your existing tools, and experiment with different workflow improvements.
And if you enjoyed this roundup, stay tuned: I’ll continue sharing useful 3ds Max resources, tools, and tips that help optimize real production pipelines.

Share
Posted on Leave a comment

Custom 3ds Max Tools That Transformed Real Production Workflows: Three Case Studies

Over the last few years, I’ve helped several studios improve their production pipelines by developing custom tools tailored to their real 3D workflows. Each project came with different challenges, but all of them had the same purpose: to eliminate repetitive work, reduce errors, and let artists focus on creativity instead of manual tasks.

Many ArchViz studios and 3D teams still spend countless hours performing actions that could easily be automated. When a workflow depends on repeating the same steps across dozens—or hundreds—of assets, custom 3ds Max scripting can make an enormous difference. These three real-world examples show how bespoke tools can dramatically boost efficiency inside a production environment.

Aspace (Australia): Automating Material Replacement

Aspace, an Australian manufacturer of outdoor playgrounds, uses a pipeline where detailed structures are created in Autodesk Inventor and then brought into 3ds Max for rendering. The workflow was solid—but one major issue slowed everything down: every imported material from Inventor arrived as a placeholder, and the artist had to manually replace them with the correct VRay materials.

With more than ten projects per week, this repetitive task consumed an enormous amount of time.

To solve this, I developed a custom script that automatically identifies each imported material and replaces it with the proper VRay counterpart from their internal library. The process became instantaneous, consistent and error-free.

The outcome was significant: the studio saved over 20 hours of manual work every single week, allowing their artist to spend more time improving the quality of the final renders instead of handling repetitive setup tasks.

Star Event (Malaysia): A CAD-Inspired Measurement Tool

Star Event, a multi-award-winning event marketing agency, needed a way to take accurate measurements inside complex 3ds Max scenes. They were looking for something intuitive and reliable—similar to SketchUp’s measurement workflow and the clarity of CAD annotations—but fully integrated into their 3ds Max environment.

They also needed to export all measurements to a spreadsheet (Excel or CSV) and include the dimensions directly in the final 3D renders for documentation and client presentations.

I developed a custom tool that allows users to take precise point-to-point measurements with snapping support, automatically generate readable TextPlus-based distance labels in the viewport, and manage everything from a dedicated interface. Measurements could be renamed, organized, exported and rendered directly within the scene.

This project eventually evolved into 3D Measure Master, a commercial plugin now used by hundreds of 3ds Max professionals worldwide—a great example of how a custom script can grow into a full-featured production tool.

Beiga (Poland): Automating RenderStacks Workflows

Beiga, a studio specializing in photorealistic furniture visualization, often works with multiple furniture groups, material variations and both regular and transparent-background render versions. Setting up all these combinations manually inside RenderStacks(*) made their workflow slow and difficult to maintain across projects.

To streamline this, I developed a custom tool that automatically builds the entire RenderStacks structure needed for the project—creating and organizing layers, preparing cameras, setting up visibility rules and generating all required passes. Instead of manually configuring dozens of options, the user simply selects the furniture groups and cameras, chooses the material variations, and the entire render setup is generated in seconds.

RenderStacks provides deep automation capabilities through its Maxscript API, but making full use of it required studying and testing its functions thoroughly. I also consulted with RenderStacks support, who helped me work with a few advanced, undocumented functions. This made it possible to deliver a tailored and efficient solution that the studio could reuse across multiple projects.

(*) RenderStacks is a 3ds Max plugin used to manage complex multi-pass render setups. It allows artists and TDs to build structured, modular render trees, and provides a Maxscript API for workflow automation.

What All These Projects Have in Common

Although each case was unique, all of them demonstrate how custom scripting can reshape a studio’s workflow. Every tool significantly reduced manual labor, minimized the risk of human error and adapted 3ds Max to the exact needs of the production pipeline instead of forcing artists to work around limitations. Most importantly, these solutions allowed teams to shift their time from repetitive tasks to creative work—where it truly makes a difference.

Want to Improve Your 3ds Max Workflow?

If your studio could benefit from workflow automation, custom tools or pipeline optimization in 3ds Max, you can learn more about our Custom 3ds Max Script Development Services.

Share
Posted on Leave a comment

From Developing 3ds Max scripts to Blender addons

My First Steps into Blender: Why I Decided to Start Developing Addons

For more than a decade I’ve been fully immersed in the 3ds Max world—using it every single day for production, and building plugins and scripts under the Spline Dynamics brand to make workflows faster, smarter, and a lot less painful. 3ds Max has been my home, and honestly, I still love it. But over the past few years, it’s been frustrating to see Autodesk holding back on 3ds Max development, while Blender keeps expanding impressively across every corner of 3D production.

Like many of you, I was skeptical at first. Blender looked interesting, sure—but could it really compete with 3ds Max in professional pipelines? I’ve always believed that software is just a tool, and what really matters is what you create with it. Still, Blender kept popping up everywhere: in ArchViz, motion graphics, VFX, game development, even among freelancers and small studios that traditionally relied on Max. Why? It’s free, open source, growing super fast, and the community is insanely active.

So at some point, curiosity won. I started learning Blender on the side, playing with Geometry Nodes, digging into the Python API, and comparing it to my experience developing for Max. And here’s my honest take so far:

What I really like about Blender:

  • It’s free and open source, which lowers the entry barrier for tons of artists, and allows for continuous updates and revisions.
  • The software is really lightweight and opens in a few seconds.
  • Geometry Nodes are just brilliant. They open up procedural workflows that in Max would require either plugins or a lot of custom scripting.
  • The community is massive, helpful, and super engaged. There’s a constant flow of tutorials, addons, and experiments.
  • Development is active and transparent—you can see the roadmap, the commits, and even influence the direction.

What I still miss from 3ds Max:

  • Some workflows still feel more polished and robust in Max (especially when it comes to precision modeling and certain CAD-related tasks).
  • The modifier stack in Max is simple but extremely powerful—sometimes Blender’s approach feels a bit messy.
  • As a developer, the MaxScript environment (combined with the SDK) is very mature, while Blender’s Python API is powerful but still has quirks you need to work around.
  • Let’s be honest: switching after years in Max is not painless. Muscle memory is a thing!

After a while, I realized something important: I don’t need to choose. I can keep developing and supporting plugins for 3ds Max while also exploring Blender. Both have strengths, and many professionals (maybe you too) actually use them side by side depending on the project.

Which brings me to some exciting news: I’ve just released my very first Blender addon!

ECM, a simple and powerful Blender modifier

ECM – Extrude Curve Modifier is a non-destructive modifier built with Geometry Nodes that lets you extrude curves quickly and parametrically. If you’ve ever tried to create 3D geometry from curves in Blender, you know it’s possible but not always straightforward. ECM makes it simple, intuitive, and flexible—something I always aim for in my tools.

This is just the beginning. My plan is to keep developing addons for Blender while continuing my work in 3ds Max. I see this not as “switching sides” but as expanding the toolkit—for myself and for you, the artists who follow Spline Dynamics.

So if you’re a Blender user (or curious about becoming one), feel free to check out ECM, it’s already available on Blender Extensions and on Gumroad. I’d love to hear your feedback, suggestions, or ideas for future tools.

This is a new adventure for me, and I’m honestly excited to see where it leads.

Share
Posted on Leave a comment

Maxscript Bits & Tricks – Randomize Objects, Colors & Materials in 3ds Max

Bring more life and variation into your 3ds Max scenes with just a few lines of Maxscript!

In this edition of Maxscript Bits & Tricks, you’ll learn how to quickly randomize the position, rotation, wirecolor, and materials of selected objects.
Perfect for creating more natural, less mechanical arrangements in ArchViz, motion graphics, and product visualization projects.

Code snippets

1. Randomize position and rotation of selected objects

Move and rotate selected objects randomly to create more natural distributions.
This script supports 3ds max groups.

for obj in selection where obj.parent==undefined do (
rPos = random -3.0 3.0
rRot = random -20.0 20.0
move obj [rPos, rPos, 0]
rotate obj (eulerangles 0 0 rRot)
)

2. Randomize wirecolor of selected objects

Assign random wireframe colors to each selected object, making it easier to distinguish them in the viewport.

for obj in selection do obj.wirecolor = color (random 0 255) (random 0 255) (random 0 255)

3. Swap materials among selected objects

Mix up the materials of the selected objects randomly without repeating.

selArr = selection as array
matArr = for obj in selArr collect obj.material
for obj in selArr do (
idx = random 1 matArr.count
obj.material = matArr[idx]
deleteItem matArr idx
)

Why use randomization scripts?

  • Add natural randomness to scenes quickly
  • Create more believable and organic object arrangements
  • Speed up look development for ArchViz, design layouts, or product setups
  • Simplify creative variations without manual tweaking

More productivity tools and scripting for 3ds Max

If you found these tips helpful, be sure to check out our professional plugins and tools for 3ds Max.

We also offer custom scripting services to automate repetitive tasks and boost your workflow!

Share