Reapply Materials on Import

In our office, we spend a lot of time reapplying materials every time we have to reimport an external file that we have made changes to. For example: Import a Revit or Dwg file, apply materials in Sketchup, export imagery/renderings, the client makes changes and the Revit file is updated, reimport to Sketchup and start over again. One seemingly simple way to do this, is to not create new materials on import unless they do not exist in the file already. Revit sometimes does this when importing various content. A message pops up and asks if it should overwrite existing material, use existing materials, or create new. This could be a checkbox on the import window. Currently Sketchup creates new materials for any duplicate materials with a “1” appended, so no changes to the materials is carried over. I thought the Sketchup Studio Revit importer would have an option for this, but it has the same issues.

Maybe there is a way to make this workflow better already, or maybe there is an extension that can do this. If so let me know. I can imagine an extension that simply replaces all of the duplicate materials with the originals (overwriting any materials with an appended number). Or one that can save material “sets”, or the current state of changes to a material, and reapply them later as long as the material name hasn’t changed. This would allow you to create various material schemes or sets that can be switched out easily.

In the meantime, I’ve hacked together a plugin that seems to work at least to merge imported materials. Hope it’s helpful in case anyone wants to use it.

V3Studios_imported_material_merger.rbz (2.4 KB)