The 3D models in a configurator is structured into
The relationships looks like the following:

The only entity that contains a 3D-model is the Design. The other entities (except for Materials), are used to structure the Designs into a logical hierarchy to support the requirements for the configurator.
The Configurator is the entitity that puts it all together, it has:
A product is a collection of components for a physical location within the house, or by other logical similarities, such as exterior, interior, first floor, second floor, roof, kitchen, bathroom.
The main reasons for using products are:
Components are the main building blocks in a configurator, and can be translated into a single building component.
Each Component should be responsible for a building component on a specific floor. This makes it possible to hide components if displaying something below them, and makes it easier to track down and fix faulty models.
Don't merge components that can be further broken down, for example "Outer walls floor 1, 2 and 3"
Do divide into more components if possible, for example Outer walls floor 1, Outer walls floor 2 and Outer walls floor 3
Context names are used to dynamically target a type of component, such as the roof, outer walls, floor in the bathroom, kitchen counter top, etc. This makes it possible to swap components without creating a hard reference to any of them.
The context name has the following purposes:
A design is used to represent a shape of a component with a 3D-model, and can be displayed to the user to allow selections. A design can also be empty (no 3D-model) to represent a no-choice.
This faucet component has three designs, where the empty design C works as an option to exclude the faucet from the house:

Each design can have different colors, which is implemented by using Design materials.
Characteristics:
A design material is one or more materials applied to a design, and can be displayed to the user to allow selections. In simpler terms, design material are the different colors a 3D-model can have.

Characteristics:
Components can be added to designs to create sub components. They can be used to include components based on a design choice, such as a chimney:
