Dynamic component material change

I am trying to make a dynamic component in which you can change the finishing material. Here is the file I´m working on Cube.skp (198.3 KB)

However, once the component is created and saved in the local folder to be placed in another file, this component “does not come” with the materials that I set it to select (Carrera Marble or Granite Brown).

I downloaded the SketchUp TruckDelivery TruckDelivery | 3D Warehouse to investigate how this is done but I could not do it in a way that once the comoponent is inserted into a file it will bring its variations of materials.

Would anyone know how to do this?

How I set the model

You can do this by adding a grouped face in the model, applying your materials and then hiding the said geometry.

Does the component insert with one of the materials?

Please provide your working file and I will have a look. EDIT: Nevermind, you have provided it!


You have a [Space] before the M for the material name. That’s the issue.
I have added this to the ‘Value’ column on your drop down list and it is now working.

But maybe you should resave your material without the [space] at the front anyway

Cube REV01.skp (198.0 KB)

This still does not work: I saved your ** Cube REV01 ** as another template to then be placed in another file, as it should work properly but still the same problem, the materials do not show up with the template

Have you tried just double clicking on the REV01 file straight from download?

And also purged your file when you have deleted your old model?

if you import it into a model, you need to explode the top level wrapper…


@john_drivenupthewall, @aroberts
What I need is a file that, when inserted into another file, does not need to explode it or have to double-click to get past the first grouping level, but at the same time as that file brings with it the materials that they should come with him.

It is the example of the ** delivery truck ** of Sketchup, once inserted inside another file it is not necessary to explode or enter the hierarchical levels of the components to have access to the materials

Right click and ‘save as’ with the original component whilst in model space. Then try the insertion process again. That should do it.

Try with the REV01 file. Open it , Select component, Right click, Save as. Then drop that file into your main model

This did not work, either. But thank you anyway

Here is the sollution that solves the problem!

When I tried to investigate how things worked in SketchUp’s TruckDelivery I had not found the materials that were hidden inside, so I figured out that there was another more sophisticated way of creating a dynamic component in which to change materials.

Thanks for your help and patience!

Hi Guys,

I’m trying to create a Door Dynamic Component with a lot of change options, including a color change option. In SketchUp everything works great but when I use Enscape Rendering the problem appears. Distorted Textures Map are no longer the same as in the SketchUp environment.

I have two images showing what I just said and a Door Dynamic Component file, I hope to hear how to fix it from everyone.
Glass Door-Styles 3.skp (6.8 MB)

There a lot I can do with this, but first can you see if this is a better result for your rendering. I temporary outer- shelled the casing, you can swap this back with the definition to reinstate the attributes after if you wish to change the door

This is part of a simplification method
outer shelled aves.skp (6.8 MB)

1 Like

Hi pcmoor,
I appreciate your helpful comments :))
There is a problem that when I change the width to a number other than 2000mm, the Outer Shelled side is distorted, the correlation between the top Outer Shelled and the side Outer Shelled is not the same in width and it is not technically correct, in The picture shows what I just said.

On the other hand I would still like to have the choice of the Outer Shelled width size.

I’m still not very clear on how to Swap it back in with the new attribute definition can you be more specific?

Your original DC should be saved as a component file in some nominated folder. The altered DC I sent you can be swapped via the right click context menu with your saved DC to reinstate its functionality. (a short cut can be set for this)

this takes you to the file explorer where you can navigate to the original definition

The concept is produce a result that can be used for rendering, that is to make objects complete again instead of a sum of parts, like an I beam or composite can become whole again for an instance, then cuts or holes can be made without hindrance. Should for some reason this instance needs to be changed, then the right context swap method enables DC capabilities. Further to this, by using the “Current” formula and setting references in a second container you can swap with any other members and still retain the current settings. Ideal for swapping the casing to another profile, or door styles… You do not have to include all the options in one heavy DC, but rather have a library of swap-able members, So long as they have the same axis and insertion point.

Once you have established a method to simplify , whether outer- shell, solid tools, explode, erase the hidden options…
you then can use flags within the DC, so that a script can do the process for you as well as freeze the affected instance.

Should you decide upon this workflow, I can step by step help you, as well as input from other interested parties

Some recommendations
You can reduce the material sizes down and save 2 MB

The closer in your model is 3.5MB, it really is too heavy. I would either find a more economical file or use the Skimp extension
Skimp | Simplify your Sketchup model | Import FBX, OBJ and more (skimp4sketchup.com)