Global material changes
-
SU8 on Windows XP
I have imported a small city model from 3D Warehouse. Since this is a background to my model, I want to change all default white surfaces to gray. The city consists of 1644 components. I selected the whole model, edit component, picked a color, and applied to the model. Only about a third of the surfaces changed. When I selected the 1644 components and applied the color, my computer hung at about 60% CPU usage for a long time, and is still Not Responding. I also tried the Quick Selection tool, but it refused to select all faces on the visible layer. So I'm stuck with some white faces and some gray faces.
There's got to be a way to make global changes to attributes of all edges, surfaces or components of the same kind, or on the same layer. Any suggestions?
-
Is the white a material or the default front face color? If it is a material, you could delete the color from the In Model Material Library. Just find the color thumbnail, right click on it and choose Delete. Or you could edit the existing white to make it gray.
It sounds as if you might have some components that were opened for editing and the material was painted on the faces and other components that were painted without opening for editing.
-
Definitely what Dave says. If a component's contentis painted with any material, you cannot change it from "outside" of the component.
If you imported that whole model in one piece, it must be a component now (with supposedly further, nested components/groups inside).
Right click on this whole city model component and "Save as..." - it will be saved as a separate skp file. Now open the saved file separately and you can examine it better (without your own materials and such). You can delete any material from the Material browser just like Dave suggested. Right click on the material name, delete and disregard the warning popup. Use a colour to paint everything to your liking and when finished, save the model...
Now back to your original model, right click on this city component again and "Reload..." - now navigate to your saved skp file and select it to reload. This is always a safer way to manage complex things - especially when you imported them from somewhere and you cannot figure out what's going on inside your master model (due to other components, lots of materials etc).
Finally, in your master model, purge your materials at least to get rid of anything left over after the changes.
-
The GlobalMaterialChanger script will swap materials fully in one step - included where they are nested - so you can pick a material by name from the list and 'remove it' by resetting it to be <Default>...
Also as Gaieus said - remember to Purge your Model regularly to remove unwanted things like unused materials... -
Thanks to all for the sage advice. I tried the Global Material Changer script, but it had the same partial effects. So now I'll try the "Save As" trick.
I'll also try the "Purge" materials & components trick. The first urban model I tried left behind hundreds of components & colors, but I couldn't figure out how to delete them, except one . . . at . . . a . . . time. It would be nice if SU had a button right there on the Materials & Components palettes for purging. As a naive novice, I would never have thought to look under Statistics for a Purge command.
-
Actually, there is an option for purging unused materials and components (as well as layers and styles) in the dialog box. There's a flyout menu that opens when you click on the little arrow pointing out toward the right. If there are unused things to purge, it will be dark. To get rid of all unused materials you would need to purge unused components first.
There's also the PurgeAll plugin. Not really needed but I like it. I have a keyboard shortcut assigned to run it and it gives a report of how many of each sort of thing it has purged.
-
I saved the urban model as a separate SKP file. Then I opened it and edited the main component, then selected all sub-components. When I use the Global Material Changer to swap colors, SU8 Pro begins to use about 60% of CPU, and stops responding to further inputs until I shut it down. Am I doing something wrong?
-
Is it possible to split the urban model into some smaller sections and copy them one at a time to a new file to try? What is the file size for the SKP of that model?
Also, what happens if you go into the In Model Materials library and delete the unwanted materials one at a time. Will it hang up then?
-
If the urban model is indeed just context, now that you've saved it out, could you explode everything? Not a very elegant solution, but if there are no components or groups, you can edit the materials of everything at once more freely. Then when you reinsert it in your model, it will be a component, no nested components.
-
I've adjusted the Global_Material_Change tool http://forums.sketchucation.com/viewtopic.php?p=96863#p96863
Now if you run it without a selection it now changes the matching material for everything, the model entities and including anything inside groups and definitions, even if they are unused...
Please try it again it should now work as you hoped...
-
Unfortunately, I am now stuck in a rut. The original file with imported urban backdrop component, "Bondi Beach", has been hanging up since I first tried to use Global Material Changer. So I saved the component to a separate file, and again tried to use GMC, and again it hung up. So I deleted that file and opened a new one, then imported the same model into an empty file. It also hung up. I pasted a couple of the system error comments below.
The Bondi Beach component is perfect for my needs, and I haven't found anything else even close. All I want to do is change the default color. But that was hours ago, and I seem to be getting farther from that simple goal, down a series of branching side paths to nowhere. Has anybody else been there?
I'll try to go back to any earlier file, and start over again. Maybe the GMC will work this time.
Errors :
<< Resolve Partial Assembly failed for Microsoft.VC80.DebugCRT. Reference error message: The referenced assembly is not installed on your system.>><< Dependent Assembly Microsoft.VC80.DebugCRT could not be found and Last Error was The referenced assembly is not installed on your system.>>
-
Reboot the computer?
-
Well, I finally just gave up on global changes, and started selecting blocks of sub-components within the major component. But this relatively small and simple urban model is like handling nitroglycerin : any slight mis-step and bam! It even locked up on a selection of 231 smaller components such as simple roof faces when I tried to explode them all at once, just to change the color.
I'll eventually get this thing done. But it's a good thing I'm unemployed. Because I could never bill for the spinning wheel time on this minor update from an old 2005 model done in SU5.
My Windows XP system is running on a Pentium 4 dual processor @ 2.8ghz, with 4MB of fast memory, and a Quadro FX graphics card with 256 MB memory. I suppose that SU8 is not set-up to use dual processors or a graphics card.
Thanks for your support in these trying times.
-
Now that I have exploded almost all components in the Bondi Beach file, and laboriously changed the face colors one-by-one, I have a very large file size. Originally a 6MB file, it is now 12MB. The city blocks are grouped, but not made components. Every time I do anything to components the file locks up. I have used the Polyreduce script several times to reduce the total number of polygons. But I can't tell if it actually does anything. The script doesn't give you a before & after poly count. The SU8 Model Info shows 37, 906 faces. But that doesn't seem to translate into polygons, because as I exploded each of the many sub-components, some of them noted more than that many polys in one component.
Shouldn't SU make it easier to reduce the poly count of complex urban models that might go into Google Earth? I'd appreciate any suggestions, before I import this stripped-down backdrop into my original building model. Thanks.
-
Exploding the component instances--I gather there was more than one instance of at least some of the components--likely resulted in the file size increase.
SketchUp is set up to work with graphics cards but not dual processors. Could you try as I suggested earlier and copy out subcomponents to another file and try dealing with them individually?
SU8 has the Shell tool which is intended to reduce models to just a shell with no internal structure and so on. Whether that would help in your model, I have no idea because I haven't seen it.
-
Off Topic :
FYI, for the benefit of anyone else struggling with a large background model, such as an urban area, here's a tip I learned the hard way.
The urban model in its own separate file was 6MB. After exploding most components in order to change the face material (manually & locally, as it turns out) the file size ballooned up to 11.5MB. When added to my own building model that produced a filesize apparently too large for my system to handle.
So I exported the urban model from SU8 to 3DS format. That step reduced the file size back down to 2.3MB. Unfortunately, it also undid most of my laborious material changes. So, next time I'll export the complex background to 3DS before I attempt to make material changes.
PS---The Global Material Changer script still didn't work on the 3DS file. Instead it caused a lockup & shut-down. Maybe even the reduced total file size is just too big for my system. 4MB of physical memory (plus 256MB of graphics card memory) should be enough for most SU models. But I noticed that my Task Manager showed almost no Virtual Memory in use, even when the CPU was maxed-out. The system Page File is set for Windows to automatically adjust to memory demands. But it doesn't seem to be taking much of the load off the physical memory.
Advertisement