Welcome > Overview > Account Creation/Login > Project Setup > 3D Setup > Custom 3D
This guide defines the official hierarchical structure for creating customizable 3D objects compatible with the VR4Life system.
It enables switching between different styles (Vintage, Modern, Classic, etc.) and materials (colors, textures, finishes) directly within VR4Life.
Following this organization is essential to ensure that the system correctly recognizes models and applies customization options seamlessly across all supported platforms.
Files demo
Blender
Home demo
3D MAX
Demo file
The logic of the customization system is based on three main suffix tags, which must be used correctly in your object names.
Each tag defines how the system interprets and groups your 3D content.
_mult (Multi-Option)
What it is: The parent of a customizable object — must be an Empty 3D Object.
Function: Groups all style categories available for a specific item.
Example: Chair_mult, Table_mult
The name before _mult defines the main customization button in the UI (e.g., “Chair”).
_catg (Category / Style)
What it is: A container defining a specific style or theme — must also be an Empty 3D Object.
Function: Groups all 3D models belonging to that style.
Example: Vintage_catg, Modern_catg
The name before _catg defines the style option shown in the customization menu.
_mat (Material)
What it is: The final 3D object with geometry and material (color/texture) already applied — not an Empty 3D.
Function: Represents a specific material variation of a model.
Example: Gold_mat, AgedWood_mat, Painted_mat
To make style and material swapping work properly, your 3D hierarchy should follow the example below.
Note how the style variations (Vintage, Modern) exist under the _catg level.
Example: Chair with Multiple Styles and Materials
HOUSE (Scene)
└── Chair_mult (Empty 3D) <-- Main customizable object
├── Vintage_catg (Empty 3D) <-- First style category
│ ├── MetalChair (3D Object)
│ │ ├── Gold_mat
│ │ ├── Pink_mat
│ │ └── Red_mat
│ └── WoodenChair (3D Object)
│ ├── Aged_mat
│ └── Painted_mat
│
└── Modern_catg (Empty 3D) <-- Second style category
└── WoodenChair (3D Object)
├── Red_mat
└── Caramel_mat
Main Menu:
The system detects Chair_mult and creates a main customization button labeled “Chair.”
Style Options:
When the user selects “Chair,” the system finds the _catg children and displays the style options: “Vintage” and “Modern.”
Model & Material Selection:
Choosing Vintage shows the MetalChair and WoodenChair models with their respective _mat options.
Choosing Modern displays the WoodenChair model with Red_mat and Caramel_mat.
Below is an incorrect example of structure that will cause recognition issues:
HOUSE
└── Chair_mult (Empty 3D)
└── Chair_catg (Empty 3D) <-- ❌ ERROR: Generic name, does not define a style!
├── MetalChair (3D Object)
│ └── Blue_mat
└── WoodenChair (3D Object)
└── Green_mat
Why it’s wrong:
Using a generic name like Chair_catg prevents the system from distinguishing between styles.
All chair models will appear mixed, and the customization menu will not display style options (“Vintage”, “Modern”, etc.).
Remember — clear naming and proper hierarchy are the keys to successful integration!
For additional guidance, download our official example project:
Download Example Model →
To get started, select the 3D tool or software you're working. Each section contains tool-specific instructions and recommendations to help you prepare your model for the VR4Life platform.
Found a problem? Visit our form and let us know!