Workflow method? - Retail Shops

Hi everyone…

Looking to bounce off ideas on best method to simulate retail activity in a SU model… I have over 180 shops model in about 10 different shop variations… all as components… I am trying to efficiently add retail variety with elements I can vary and turn on or off via tags while still keeping the face counts efficient…

I have attached my SU model as as sample …in this case adding separate wall planes and window display boxes which have retail images applied as textures…

I am interested to here how others have or might approach this problem ?

Yes I know you can do this in post rendering in photoshop but it also seems tedious and also an effort dead end as the renders are have no downstream productivity benefits…

PS… it would be a big time saver if we could apply a selection of image textures randomly to a surface material… like Vray can…

shopfront test.skp (698.3 KB)

I also have close to 6000 apartments of about 20 different designs above these shops that I would also efficiently like to assign indicative interior textures… any thoughts ?


Have you tried Eneroth Randomize Materials extension?


I missed that one… thanks will give it a try… I did an extension and forum search a few days ago… I have used skatter before to randomise distribution of components on a facade… but that was with a relatively simple grid pattern… not a floor plan with a variety of component dimensions and local origins…

Maybe you can try with extensions: Eneroth Randomize Components or Eneroth Random Selection + Replace Component, and s4u Paint.

Instead of cars you have apartments

1 Like

Sort of, But not really…

There are 11 towers of about 36-40 floors, All the units are components , but I don’t want to randomise them… Just some of the interior textures within then, to simulate residential interior variety when viewed from outside [ as per the shopfronts] I think I will have to create a temporary copy of the towers in a separate file… inset surfaces to receive indicative interior images, then explode the components, isolate those surfaces, … and try using Eneroth’s random tool to apply a random scattering of interior textures… group them to a separate tag and reinsert into my main model…

It is a common dilemma when using components, adding variety without destroying the advantages of components

Don’t know if you can make this work, but from day one the “default” material was intended to be a kind of “variable” texture within components, and the classic example was a car component, where you paint the glass and tires etc. actual colors (inside the component context), but the body is the default color. When you paint the whole component, only the default color parts adopts that whole component color.

Edit: Remember these old, ultra low poly guys?

1 Like

Hmmm … interesting…I always paint all my surfaces within the component/group… but I could go in and change the ones i wanted random to default … might work… will try tomorrow

I am assuming a default material can be any texture :slight_smile:

If they are randomised, what did you lose?

If the apartments are components, they still contain components anyway (doors, windows, furniture, etc.), and if you randomize this apartment component, you will still be able to make changes to the interior elements for all at once, except for the different colors of the walls. And you have the option to easily bring them back to a single unique component - the original apartment.


But it’s your workflow, and… how it’s easier for you.


The risk is they will shift in their position as the component origin is not consistently the same… these units were developed over 4 weeks and in three different files so their origins drifted over different itineration’s of the component… and I can’t face having to realign then again… I will give it as test though… nice animation… thanks :slight_smile:

1 Like

If you have components (apartments) with different axes, before randomizing them, you can use the extension Axes Tools to align all the axes.
Just an idea.

This sounds to me like you misunderstood the concept.

Inside the component you texture whatever you wish to keep constant between instances, such as car tires. Leave the “variable” surfaces in default material. Outside the component texture the whole component in any texture --and it will take on that texture in whatever surfaces that you left default.

That said when you paint a component other than a solid color you don’t have control over the position of the texture for each surface, hence this trick is usually used for solid colors.

1 Like

Well I generally avoid the default colour… as it has caused me issues in rendering software… so never really appreciated its subtle usage so you could not have variable textures in a default material as there is only “one” default material…?

There is only one default texture in a component, but by nesting them, there seems to be a cascading effect, Not sure of all the consequences yet.

1 Like

Actually, ‘default’ refers to no material, like ‘Untagged’ is the default Tag.

You have some control over position and rotation of the face, but one needs to replace the existing texture in the entity panel with the ‘default’ color in order to keep the changed UV map.

1 Like

Try it out. You are not “using” the default material. You are making components in which you have left some faces as default or un-painted, then you paint the component with some other material.

Try this. Make a cube a component. Make copies (instances) of the component. Edit the cube and paint some of the faces, and not painting others. Now close the component and paint the components any color. One instance will take on one color, and another can be painted a different color.

In the car example you can have 20 cars, they are all instances of the SAME component, but you have painted them 20 different colors, by painting the component, not the surfaces inside.

Here’s my solution. I did the same job and I bought a Retail bundle from

I send you an example:

Just import into SketchUp.


Cam on em… just what I have been searching for… :slight_smile:

Wparrallax seemed to have nailed the problem very professionally and certainly reasonable pricing…

Very impressive… hopefully they will release a SI / Twinmotion optimised solution


I don’t have any parallax textures, but once you have uv-mapped the faces of that component and deleted the original texture, it should remember those mapped textures:
Untitled.skp (822,4 KB)



Thanks, yes I do know that extension… just risk shy after investing 4 weeks of long hours to get this work out the door :slight_smile: but I will try it on a temp copy file… and post results to all the suggestions here… just having a weekend break after some long days

PS thanks for everyones feedback!

Im a bit late to the party but thought i’d add my 2c anyway…

The Default Material property is indeed super useful in this context, and Im not aware of any other software that utilises it in the same way…

Here’s another (complimentary) method I use to randomise things like Balconies, Roofs, Furniture, etc on buildings/apartments… but you can use it for window displays as well.

  1. Within each window of each apartment,place a cubic-shaped components. with 4 different images painted on the verticle faces.
  2. randomise the rotation and flipping of the components. (you can do this via simple extensions, or manually. There are some neat extensions like this one Repeating Copy, Rotation and Scaling of Objects with Memory Copy - SketchUp Plugin of the Week - YouTube you could try)

Rotate =4 variations
Flipping = 4 more, so 8 variations in total.
(if you use rotate, then you can add hexagonal or octagonal components - if those fit your window - to create even more variety).

  1. To add further variety create a second cubic component that sits inside the first. Then, utilising some transparency in your materials, you can see the combination of two images overlaid together, giving something like 60 variations when rotated and overlaid.

  2. Make your cube inside a fair bit smaller than the first, and you can also acheive a sort of depth effect which adds furhter variety (parallax, but not moving).

Because it doesn’t use UVW mapping this method is a reliable way to export to other software & renderers.