Mempercepat Laju Sketchup


There is a method to the madness.  SketchUp is a real-time renderer.  Anytime something changes in the workspace, the affected visible items in that workspace have to go through a series of recalculations that keep everything looking the same until the change is finished.   So the more visible, complex stuff SketchUp has to manipulate, the more work the computer system needs to perform.

There are three main areas to reduce the rendering workload

Manage the complexity of the stuff placed in the file.

Wrap up stuff with cloaks of invisibility to reduce the computer’s workload.

Wrap up the bits and pieces – by grouping, using components, and nesting related objects – then managing when when those things can be visible.  There are several nifty options to control visibility besides using the Hide tool in the context menu.

Work Habits and Computer System

The little things – which the modeler controls – add up and improve the modeling work flow.

Limit Excessive Geometry

Look for opportunities to use the least number of segments on curved work. Models and model details made with arcs and circles can make the model size get out of control. In particular, try to use fewer segments in the following situations:

  • On arcs of shorter length or larger radius (flatter curves).  You may get away with only using 3-segmented arcs instead of the default 12-segmented ones.
  • On circles of smaller diameter.
  • Where the effects of fewer segments will not be as apparent because of smoothing or because the curved surface will not present a prominent profile,
  • When you plan to use the arc as part of a Follow Me extrusion, either as the profile or the path, this compounds and multiplies the impact on file size of unnecessarily fine-grained curves.
  • Slow Performance Explore how highly detailed cabinet knobs can bog down a model.

Banish 12-segmented softened edges

There are low-poly options when just softening an edge lacks visual dimensionality, and the default 12-segmented arc adds too much geometry.   Note: this animation toggles on and off the Hidden Geometry, which is available through the View menu.  The edges were softened with Erase+Ctrl (PC) Erase+Option (Mac).

Substitute a texture to depict an otherwise high-poly modeled elements – i.e.., a transparent PNG image of fencing instead of modeled fencing with lots of geometry.

Relevant Plug-ins

  • Polyreducer The beginning of a SU plug-in to reduce the poly-count of some imported models.  Some people use the program Blender for that task.
  • Cleanup thomthom – Reduces coplanar geometry.

Make Groups and Components

Groups

Modelers need to have a way to control how things interact.  Grouping stuff is a quick way to segregate related entities from the rest of the model.  Things inside the group or component wrapper will not be affected by changes on other parts of the model.
To get more control over a wrapper itself and the contents of the wrapper, jump into the use of components.  TaffGoch created a HousePlan file to help people understand how groups and components are used.  Open the Entity Info window while examining the file –  from the Window menu, SketchUp menu on a Mac.   Entity info lists what the parts are and layer location.

Components

Like groups, components throw a segregation wrapper over selected entities.  But it does more.
  • If you are using the same entity multiple times (for example, a window or a tree), make it a component, and then use copies of the component. Multiple instances of a component are lighter-weight than multiple copies of an entity or group.
  • Use components as an archive.
    • Save a copy of a model in Component Libraries/Collections to readily retrieve it for future use.
    • Use the component as a jumping point for future model modifications, as there is a tool in the context menu (select component, right-click) to make a unique copy.
    • When a part of the model is in an awkward location to modify in situ, add a copy of the component in an accessible location, square to axes, to modify the geometry instead.

Model major components in a separate file.

Component context menu options
Components Browser
  • Bring the components into the main, master model file by importing them through File > Import or through the Components browser from a custom, component library.
  • Refresh those edited library components
    • Changes to external SKP files and library components do not automatically update when changes are made in external copies.
      • Select a component in the workspace and replace component instances through the right-click context menu as described above.
      • Open the two browser panes in the Components browser (SU6 & SU7)
        1. Click on the house icon to get the In Model components
        2. Right-click the old component and select Reload
    • There’s a Xref Manager plug-in for those accustom to AutoCAD methodology.  Xreffing is a way to coordinate and manage the re-importation of external components and DWG/DXF files into master SKP file.  Look for the latest version of XrefManger at the Ruby Library Depot.  It’s located in the Files-Converters-Mics section.  Open the plug-in in a plain text editor, like Notepad, to find additional instructions.
  • Another way to Save or Reload a component is through the right-click context menu
      1. Select a component in the model work space
      2. Right-click and choose Save As in the context menu to save the component to an external location.
      3. To update the external component, select the component, right-click > Reload.
  • TIP: Do not change components axes
    • If you set up a component in a master file and want to save it in a separate file, do not disturb the axis location in the new file.
    • When the external model is reloaded into the master model, it will oriented and placed according to the axis position.
    • For example, layout and set up a component in the master file.  Then select the component and save it in an external file.  Stop all new modeling of that part in the master file.  Instead refine and update that model in the new, external file.  Do not change how the model is oriented to the axis.  Whenever changes need to be shown in the master file, select the affected component and Reload it from it’s external location.

Use low-poly components as place-keepers.

  • Try using low-poly component versions early in the modeling process.  Replace them later with better components.
    1. Make a replacement component.  It will appear in the Components browser, In Model library (click on the house icon.)
    2. Select the component you want to replace in the model workspace
    3. Right-click on the replacement component in the Components browser and select “Replace Selected.”
  • Use low-poly components for distance view Scenes of the model.  Then only use more detailed component versions for close-up Scene views.
    1. Place the low-poly component version on it’s own Layer, and the higher-poly version component on another Layer
    2. Place a low-poly component and it’s higher-poly counterpart on top of each other.
    3. Make some Scenes with the low-poly Layer visible and make some final presentation Scenes with the higher-poly Layer visible.

Videos

Relevant Plug-ins

  • cgScenes chrisglasier – Helps manage scenes, layers and components in a single re-sizable automated interface.
  • GhostComp Fredo6 – Makes simplified component versions and readily allows the smaller ghost component to substitute for the detailed version.
  • HideAll
  • HideTool
  • Loose2Groups Chris Fullmer – Groups loose geometry
  • MaxtrixProximity TIG – Helps to create and manage components based on their complexity depending on the proximity of the camera/viewer – for place-keeper fans (located in the Geometry/Drawing section of the Ruby Depot.)
    • Open the script in a plain text editor for instructions (to insure foreign formating is not added to the file.)
    • SketchUcation thread
  • XrefManager TIG – helps to manage reimporting updated, external components and DWG/DXF into a master SKP file.
    • Open the script in a plain text editor for instructions (to insure foreign formating is not added to the file.)
    • SketchUcation thread

Importing Images

Bring in the smallest image file resolution for the project to lessen the impact on file size and moving through the model.

  • An application like Google Earth can get upset with excessive large image sizes.
  • While smaller is ‘better’, the maximum image size is 1024 pixels wide x 1024 pixels high.  If a modeling situation requires a higher resolution, cut up the large image in an image editor,  Import in the smaller sections and reassemble.
  • If you import images into your model, use JPG images rather than TIFF images. TIFF images tend to have large file sizes and take more computing resources to display.
  • PNG or JPEG files best for textures?
Some notes on tiling texture:
  • Import the smallest image for tiling textures, which again is to minimize the imported file size.
  • Granted, more complex textures, like cobblestone, may need larger tile images to look better.  But try to minimize texture size wherever possible.
  • Some online texture resources and tutorials on making your own tiling textures in a photo editing program are located over on the Resources page, Materials and Textures section.
Viva La Difference!

Wolfgang (aka VAM) made this original small, wire mesh tile after being inspired from the Group modeling inquiry by Mark (aka Woodburyboy) .  Thanks to him, you too can compare the effect material size has on your SketchUp model.
CLICK on the images to get a full-sized version.  Then right-click on the image to save it to your computer.  Then Import the image into SketchUp to make it into a texture.
The test: Open a new session of SU.  Import the first image.  Paint it on a rectangle.  Save the model.  Do the same thing with the second texture.  The SKP file size of a single face painted with the larger fence grid will be nearly doubled the file size of the same sized face painted with the single tile.
(Right-clicking on these thumbnail images will save even smaller copies.  Although there is not a clean transition between the transparent and colored region.  Using them could produce an unpleasant white outline artifact.)
Resizing the image:

  • An image editor like Adobe Photoshop, Photoshop Elements, Gimp, and CorelDraw can readily resize images.
  • If there’s a quality option on saving a particular image extension, like JPG, choose high quality.
  • One of the easiest ways to resize an image file on a PC is to use IrfanView.  It’s a quick-loading, multi-lingual, powerful media viewer/editor that’s also easy to use.  In IrfanView go to Image > Resize/Resample.

Purge, Purge, Purge

  • Every time you use a texture or component, this data is stored in the SketchUp file. Based on this information, we first suggest purging the SketchUp file. This also helps reduce file size. To purge the file, please try the following steps:
    1. Click “Window” > “Model Info.” The Model Info dialog box will open.
    2. Click “Statistics” > “Purge Unused.”
  • The Components, Materials and Styles palettes each have a purge option
    1. In each palette, click on the house icon to get to the items used In Model
    2. Click on the details arrow to the right of the drop-down context menu
    3. Click on “Purge Unused”
  • Plug-in aficionados may like to try version 1.4 of PurgeAll for their purging needs.  Expand the entire discussion to read about the script’s development.  PurgeAll is also available at the Ruby Library Depot.

Embrace Layers

Learning to use Layers seems to be a rite of passage in mastering SketchUp.

Be a little patient with yourself.  It seems as though something stupid has to happen in one of your own models – around the time it begins to get large, and you are almost done with it – to fully appreciate how layers benefits your modeling workflow.

Layers manage geometry visibility.

SketchUp Layers do not act like layers in other programs.  Rather Layers are a visibility property of the stuff you model.  The Layers write-up in the SketchUp Help Center is a great place to start learning.
In a nutshell, do all modeling on Layer 0.  Make groups or components from that geometry.  Assign the groups or components to different Layers.  That is done to control the visibility of the stuff you place inside the group or component.
Layers are not meant to manage how you color the model.

  • The Layers browser does have a Color by Layer option.  But it is to help visually organize geometry massings.  It is not to control how the model is painted.
  • Gaieus review how to manage materials by using multiple layers.
More Layers usage formulae


  • Ken Berry’s Groups post
  • Name Layers sensibly by prefacing the name by number or letter.  That way you can group related Layers together on the Layer palette.
  • Working with Large Models Mitchel Stangl’s 2008 3D Basecamp PDF handout and low resolution video (The high quality version is over on the main YouTube site.)   Whether or not you are working with very large models, you can see some very useful model management tricks in action.

The more visible geometry you have in a model, the slower SketchUp will run.

Model geometry must use considerable computer and graphics card resources to render itself. You can hide geometry you aren’t currently working on by placing it on its own Layers and hiding those Layers.  BUT first only create that geometry on Layer 0 and either group it or make it a component.  THEN place that group or component on different Layers.
Consider doing this with images, landscaping items like trees and shrubs, furniture, cars, and so on.
Check out Model Info Statistics

The Statistics Menu will list the Edge and Face tally for the entire model.

In Google SketchUp 7, these two taskbar buttons will take you the Model Info palette.  And you can still get there through the Window menu in a PC or the SketchUp menu in Mac OS X.

Make nested Layer sets.  This can control the visibility of several Layers with one toggle.

It’s possible to turn off the visibility of multiple Layers at one time.  This technique is shown beginning around 0:14:00 minutes into Mitchel Stangl’s 2008 3D Basecamp video Working with Large Models, using Outliner to control visibility.
In this animation, the landscape layer is assigned to a group containing all plants found in a mini landscape.

  1. Assign related groups/components to their respective Layers.
  2. Select all the Layered items you want to control with one toggle.
  3. Make that selection a group or component, and put it on its own Layer.

Oftentimes people accidentally stumble upon this technique during the modeling process.  If you DO NOT want any groups/components nested inside of an outer group.component inadvertently disappear, then place all nested items on Layer0.  Only the outermost group/component wrapper should be place on a different layer.
Using Scenes can also manage Layer visibility.
Some people set up Templates with frequently used Layers.

This would be good for people repeatedly making the same sort of models.  And if the template has too many Layers, they can be purged through the Layer detail menu, , or the Model Statistics menu.
Some relevant Layers plug-ins
  • cgScenes chrisglasier – Helps manage scenes, layers and components in a single re-sizable automated interface.
  • Layer Manager v6 Version 6 adds a toolbar with 17 commands to manage layer configuration
  • Add Hidden Layer Adds a Layer which is hidden by default in all current and future Scenes
  • LayerExIm TIG – Exports layers to a new file.
  • LayOff Jim Foltz – New Layers are visible on current Scene only.
  • CADLayers Export layer states from AutoCAD and import into SketchUp
  • LayerChange Control the active layer by right-clicking a selection
  • ListLayerColors TIG – creates a list of layer colors
  • Dispatch_objects Didier – In the Selection-Layers section of the Ruby Library Depot – Isolates all texts, dims, construction lines/points and section planes on a separate layers. One of the precursors to Filter Extension below.
  • Filter+Extension+1[1].0 In the Selection-Layers section of the Ruby Library Depot – Adds a filter selection toolbar.  You can do things like select all text in the model or on a visible layer so you then can dispatch it in mass to another Layer.
  • PutonLayer_bmw C. Grant – In the Selection-Layers section of the Ruby Library Depot – Allows you to easily move entities and their nested elements (ie groups within components within groups) to any layer, from the context menu.  It puts all primitive and encapsulated geometry on Layer 0. Only the top-level components and groups will move to the specified layer.

And There’s Outliner

It necessitates dutifully naming groups and components to be really useful, but some people use Outliner more than Layers to control model visibility.
  • Many context menu tools are available for each item – like Hide
  • You can rearrange group/component nesting
  • You can find any named component/group by typing in the first few letters of the name in the little browser window – if you remember the name.  So think about creating a naming system.

Some Outliner Educational Resources
  • How a House is Built A building construction document book with SU models which features the use of Outliner by Dennis Fukai.  Reportedly, Dennis is an Outliner guru.
  • Working with Large Models Mitchel Stangl’s 3D Basecamp 2008 session shows some Outliner usage, beginning around 0:34:00 minutes.
  • Layers vs. the Outliner Google SketchUp Blog article by Aidan Chopra, SketchUp Evangelist.
Some Relevant Plug-ins

Use Scenes

To manage the visibility of Layers:
  • Set up several Scenes with only the Layers you need visible
  • Such Scenes can be excluded from an animation via a check box in the Scenes palette.
  • Managing scenes and layers Some sage advice by TaffGoch, Jean Lemire and Gaieus on setting up scenes with different visible layers.
To manage Styles:
  • Use a plain Style – no shadows, no textures, etc. – on Scenes where you actively do your modeling.
  • Set up other Scenes with fancy Styles to view progress only
Some Relevant Scenes Plug-ins

  • cgScenes chrisglasier – Helps manage scenes, layers and components in a single re-sizable automated interface.
  • PageHide Hide selected entities on pages quickly and easily
  • Add Hidden Layer Adds a Layer which is hidden by default in all current and future Scenes
  • AddPages Add pages orthographically
  • PageExIm Export and import scenes between models
  • HideOnOtherPages In the Selection-Layers section of the Ruby Library Depot – Hide selection in other scenes than current.

Modeling Tips

Try to sequence your work so that you defer the operations and model characteristics that have the greatest impact on file size until after you have finished constructing the geometry to the greatest extent possible. Hold off on adding textures and images and decoration such as foliage until you’re nearly done.
Set-up keyboard shortcuts

SketchUp has many keyboard shortcuts already created.  And you can create many more.  It is also possible to over-write the default shortcuts if you prefer different locations.  Plug-ins can become keyboard shortcuts too.
  • Window (SketchUp in Mac) > Preferences > Shortcuts.
  • Note: to make a shortcut from a tool that only shows up in a context menu, first select something that tool can work upon. Then that tool will appear in the Shortcut menu.
Navigation

At the minimum, use the recommended 3 button mouse.

  • With the 3 button mouse, you can quickly move the model to the center of the screen.  Position the cursor tool over any geometry you want to move.  Double-click down on the center scroll wheel.  It works in any tool mode.
  • Some alternative navigation devices adds functionality that can speed up your modeling.
Lock geometry to avoid accidental movements

R-click component/group, Lock.  This can avoid future headaches and wasted time and potential flare-ups of workplace violence.
  • Locked geometry cannot be Hidden
  • Control Locked geometry by assigning it to a Layer, then turn off the Layer’s visibility.
A tip to speed up opening SketchUp

Close Window palettes, like Components and Materials, before closing SketchUp.  The palette browsers have to repopulate before you can use the program.  While at it, choose list viewing instead of thumbnails in those browser windows if possible.  That can help speed things up a bit too.
When editing a component/group, hide the rest of the model

Go to Window (SketchUp in Mac) > Model Info > Components and check Hide.
Trapped in model?

  • Switch to Wireframe or X-Ray view to navigate out of bad places.
  • Camera > Zoom Extents, Zoom Window will restore some sanity to the view
  • Camera > Previous will restore the last used camera position.  This is really useful.
  • Turn some of these tools into keyboard shortcuts.
Manage the use of fancy stuff

Unless needed, while you are drawing your model, turn off shadows, textures, and special display effects (you can turn them back on later for presentation purposes):

  • To turn off shadows, open the “View” menu, and then click “Shadows” so that it doesn’t have a check mark next to it.
  • To turn off textures, open the “View” menu, point to “Face Style,” and then click “Shaded” (instead of “Shaded with Textures”).
  • To turn off special display effects (such as Shaded using textures, Profile edges, Edge effects, Edge color, Use sun for shading, and Enable transparency), open the “Window” menu, click “Styles,” and click the Style you’re using in the model. Click the “Edit” tab then clear the selected options you don’t need.
Some Relevant Plug-ins

  • HideTool Left click to hide anything and everything you click on
  • HideAll Hide all unselected Objects in your model
  • Hide_faces_edges Hide and/or unhide faces and/or edges of the current selection
  • Unhide_all In the Editing section.  It will unhide all entities, including nested entities inside groups or components.
  • Desel In the Selection-Layers section of the Ruby Library Depot – Selects or deselects edges and faces.
  • Filter+Extension+1[1].0 In the Selection-Layers section of the Ruby Library Depot – Filters selection options
  • Zoom Selection Adds 2 menu items to the Camera Menu: Zoom Selection, and Zoom Out.  The script’s Zoom distance is different than the program’s default Zoom.
  • SelectionMemory2 Among other things, it remembers the latest bunch of stuff you selected.   Soooo, if you need to dump that big selection set to briefly use another tool – or complete another little neglected task – you can restore that last selection set with this plug-in.
  • Printkeys Pretty-looking list of your keyboard shortcuts

Computer Issues

CPU, GPU, Oh My!

SketchUp is not optimized for dual processors. And it is not impressed with quad processors neither.  As with other CAD-like programs, SketchUp uses a single processor. The computer processing workflow goes from the central processoring unit, CPU, to the graphics processing unit, GPU. In other words there is a synergistic balancing act between those two hardware components and the motherboard RAM.
While SketchUp will run on a 64-bit Windows XP/Vista/Windows7 and OS X machines, there will not be a performance increase.  For more interesting reading on why many programs (like SketchUp) will not benefit in a 64-bit environment go to A 64-bit reality check blog entry by Adobe’s John Nack.  SketchUp users will have to wait for another hardware design to boost speed improvements in this area.
If a computer is equipped with a 100% OpenGL compliant graphics card, SketchUp will rely on that graphics processor unit, the GPU, for a portion of the rendering instead of being bound to the CPU.  So a 100% OpenGL compliant graphics card is very important for the best performance from SketchUp in addition to the CPU.
Central Processing Unit – CPU
The CPU is the main brains on the computer’s motherboard.  The CPU first prepares the data for the GPU to render.  To reduce the amount for work done by the CPU, adopt a CPU-restrictive model style:
  • No Sketchy Edges, Profiles, Depth cue, Extension, Endpoints and Jitter.
  • Setting edge color to “all the same.”
  • Transparency quality set to “Faster.” Window (SketchUp on Mac) > Styles > Edit > Face
  • No textures on Faces – set the Face style to Monochrome.
  • Shadows off
  • Xray mode off
Graphics Processing Unit – GPU
The GPU processes 3D computer rendered graphics.  After reducing the CPU processing load as described above, there are some things which will reduce the GPU rendering load:
  • Use Anti-aliased textures (SketchUp 7):  Window (SketchUp on Mac) > Model Info > Rendering
  • Uncheck Maximum texture size (SketchUp 7):  Window (SketchUp on Mac) > Preferences > OpenGL
  • Use hardware acceleration is checked:  Window ( SketchUp on Mac) > Preferences > OpenGL
Fastest Templates that come with SketchUp 7
  • Simple style
  • Earth modeling
Optimize rendering delay in SketchUp 7.1
SketchUp 7.1 has a revamped rendering engine that can handle higher poly models better than earlier program versions.  To take advantage of the new rendering abilities in SketchUp 7.1, all the settings mentioned above for optimized CPU and GPU processing need to be followed.
Note: The new rendering delay has been added to functions like orbiting, so shadows (and sometimes faces) will not be rendered while orbiting in order to improve overall rendering speed.
The rendering delay can be tweaked through the Ruby Console.  The delay values changed through Ruby, will change registry values on the PC and plist on the Mac (LODPreferences: FullDetailRenderDelayMin and FullDetailRenderDelayMax.) The change will therefore apply to all sessions of SketchUp.  The new, default values in SketchUp 7.1 are:

Sketchup.full_detail_render_delay_min=1.0
Sketchup.full_detail_render_delay_max=5.0
the numbers 1.0 and 5.0 are seconds

  1. Type in one of the command lines in the Ruby Console.

  2. Change the number to increase or decrease the speed of the maximum and/or minimum rendering delay.
  3. Press Enter on the keyboard.
  4. The new value should appear under the command line in the Ruby Console.

Note: But this rendering improvement introduced with SketchUp 7.1 come at a cost.  Elements like shadows, textures, line styles, encounter a delayed rendering – not appearing until the geometry is re-rendered after orbiting is completed.
This rendering delay poses a problem for anyone wanting to make a video screen capture when shadows and sketchy line styles are used in the model.  There are two way to work around this little annoyance.  Either export a video instead of making a video screen capture or keep SketchUp 7.0 installed on the computer in addition to version 7.1.
To run both 7.0 and 7.1 on the same computer:
  1. Uninstall SketchUp 7.1.
  2. Install SketchUp 7.0.
  3. Make a copy of the SketchUp 7.0 program directory and rename the copy of the program directory folder (by default, Windows will add the words “Copy of..” to a placed in the same location.) You will have two identical copies of SketchUp 7.0.
  4. Install SketchUp 7.1.  The upgrade will install over the original SketchUp 7.0 program files and leave the renamed program copy alone.
  5. Existing program shortcuts will open SketchUp 7.1.  Create new program shortcuts to SketchUp 7.0.
    • Both versions of SketchUp 7 will share the same registry values.
    • As it is unlikely toolbars will be always arranged the same in both copies of SketchUp 7, be forwarned that toolsbars will jump around when working with both version of SketchUp 7.

General Considerations

  • Newer computers with faster processors can enhance speed. Having enough RAM is also helpful. Make sure your system meets the minimum hardware and software requirements for SketchUp.
  • Make sure you have the current driver for your video card. For more information, click here
  • If you have a fairly new video card, make sure you are using hardware acceleration. To enable:
    1. In SketchUp, open the “Window” menu.
    2. Click “Preferences.”
    3. In the left pane, click “OpenGL.”
    4. In the right pane, select “Use hardware acceleration.”
  • When you are using SketchUp, close any other applications that you don’t need to have running.
  • Optimize processor usage to favor demanding programs
    • For example, in XP go to the Task Manager > Processes > SketchUp.exe > right-click > assign Priority and Affinity values to favor the program.
    • On multi-core machines, Affinity allows you distribute core usage among programs.  As SketchUp only uses one processor core, it can be assign to a specific core, and other demanding programs assigned to a different core(s).
  • Hardware speed test Get this SketchUcation SKP to test your computer.

Instructional Videos

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: