[Ken] Design Version Mesh
Design Version Meshes represent specific variants or configurations of a Design Family. Each mesh represents a different size, style, or configuration option within the same design family (e.g., 3-seater sofa, 2-seater sofa, ottoman).
Key Concept
Design Version Meshes allow a single Design Family to offer multiple variants. For example, a โDanish Sofaโ design family can include 3-seater, 2-seater, and ottoman variants - each as a separate Design Version Mesh.
What is a Design Version Mesh?
A Design Version Mesh represents a specific variant or configuration within a Design Family. It enables:
- Product Variants - Multiple size/style options within the same design family
- Asset Management - Organizing 3D variants with metadata and thumbnails
- Version Control - Different mesh configurations per design version
- Catalog Integration - Controlling visibility in product catalogs
- Localization - Supporting multiple languages for variant names
Hierarchy Relationship
Design Family โ Design Version โ Design Version MeshExample: Danish Sofa Collection
Design Family: "DANISH SOFA"
โโโ Design Version: "v2.0"
โโโ Design Version Mesh: "3 Seater 180cm" (mesh_name: MS-00003100)
โโโ Design Version Mesh: "2 Seater 160cm" (mesh_name: MS-00003101)
โโโ Design Version Mesh: "Ottoman" (mesh_name: MS-00003102)Each Design Version Mesh represents a complete furniture piece variant:
- 3 Seater: Full-size sofa for three people
- 2 Seater: Smaller loveseat configuration
- Ottoman: Matching footstool/pouf
Attributes & Metadata
Design Version Meshes contain metadata that links design versions to actual 3D geometry, manages asset delivery, and controls catalog visibility.
Core Identity
Basic identifiers and naming:
| Attribute | Type | Description |
|---|---|---|
sfid | String (18 chars) | Primary key, Salesforce ID format |
name | String | Design Version Name |
mesh_name | String | Name of the actual mesh asset file |
mesh_label_name | String | User-friendly label for UI display |
Example:
sfid: "a50OQ000001R92PYAS"
name: "0.0"
mesh_name: "MS-xxxxxxxx"
mesh_label_name: "3 Seater"Naming Convention
name: Design Version Name (e.g., โ0.0โ)mesh_name: Asset filename reference (e.g., โMS-00003100โ)mesh_label_name: Short UI label (e.g., โ3 Seaterโ)
Relationships
Links to parent entities and actual mesh assets:
| Attribute | Type | Description |
|---|---|---|
design_family_sfid | Foreign Key | Reference to parent Design Family |
mesh_sfid | Foreign Key | Reference to actual Mesh geometry |
design_mesh_junction_sfid | Foreign Key | Junction table reference for design-mesh relationship |
Data Structure:
Design Version Mesh (a50OQ000001R92PYAS)
โโโ design_family_sfid: a4fOQ000000g8yrYAA
โ โโโ Points to: MALAGA Design Family
โ
โโโ mesh_sfid: a60OQ000001S03QYAT
โ โโโ Points to: Actual 3D mesh geometry
โ
โโโ design_mesh_junction_sfid: a70OQ000001T14RZAU
โโโ Points to: Junction table between Design Version and MeshPurpose of Junction:
The design_mesh_junction_sfid enables:
- Many-to-many relationships between designs and meshes
- Shared mesh assets across multiple design versions
- Efficient asset reuse and storage
Asset Properties
Information about the 3D asset files and loading optimization:
| Attribute | Type | Description |
|---|---|---|
mesh_thumbnail_url | URL | Cloudinary URL of the mesh thumbnail |
mesh_path | Path | File path to the 3D model asset |
chunk_id | String/Integer | Asset chunk identifier for loading |
chunk_size | Integer | Size of the asset chunk in bytes |
sort_order | Integer | Display ordering in lists and UI |
Asset Loading Flow:
-
Thumbnail Display
mesh_thumbnail_urlloaded first for quick preview- Example:
https://res.cloudinary.com/dyl94w48r/image/upload/v1736304000/design-version-meshes/thumbnail/seat_cushion.jpg
-
Asset Path Resolution
mesh_pathdetermines where to fetch the 3D model- Example:
/Game/DLC/Dist/GenericItems/CODE/MS-xxxxxxx.MS-xxxxxxx
-
Chunk Management
chunk_id: Groups related assets for batch downloadchunk_size: Tracks download size for progress indicators- Example:
chunk_id: 1234,chunk_size: 5242880(5MB)
-
Display Order
sort_order: Controls listing sequence- Lower values appear first
- Example:
sort_order: 1(main mesh),sort_order: 2(accessory)
Chunk Optimization
Multiple meshes with the same chunk_id are downloaded together, reducing network requests and improving load times. This is especially important for multi-mesh designs.
Visibility & Localization
Controls how meshes appear in different regional catalogs and applications:
| Attribute | Type | Description |
|---|---|---|
visibility_app_jp_ja | String (Enum) | Controls visibility in Japanese application catalog and search |
name_for_multi_mesh_design | String | Name used when design has multiple meshes |
japanese_name_for_multi_mesh_design | String | Japanese localized name for multi-mesh designs |
Visibility Flags:
The visibility_app_jp_ja attribute controls regional availability and catalog behavior:
| Value | Description |
|---|---|
"Catalog, Search" | Visible in both catalog browsing and search results |
"Catalog" | Visible in catalog browsing only, hidden from search |
"Exclusive Custom Catalog" | Available only in custom/curated catalogs |
"Don't Show in App" | Hidden from all catalog and search interfaces |
Example Usage:
// Standard product - fully visible
visibility_app_jp_ja: "Catalog, Search"
// Limited visibility - catalog only
visibility_app_jp_ja: "Catalog"
// Special collection - curated access only
visibility_app_jp_ja: "Exclusive Custom Catalog"
// Internal/deprecated - hidden
visibility_app_jp_ja: "Don't Show in App"Multi-Mesh Design Names:
When a Design Family offers multiple variant options, these attributes provide context:
Example: Modular Sofa Variants
| Variant | mesh_label_name | name_for_multi_mesh_design | japanese_name_for_multi_mesh_design |
|---|---|---|---|
| 3 Seater | โ3 Seater" | "3 Seater 180cm" | "3ไบบๆใ 180cmโ |
| 2 Seater | โ2 Seater" | "2 Seater 160cm" | "2ไบบๆใ 160cmโ |
| Ottoman | โOttoman" | "Ottoman 80cm" | "ใชใใใใณ 80cmโ |
Localization Flow:
User Language: Japanese (ja-JP)
โโโ Display: japanese_name_for_multi_mesh_design
โโโ Fallback: name_for_multi_mesh_design (if Japanese name empty)
User Language: English (en-US)
โโโ Display: name_for_multi_mesh_designUse Cases & Examples
Single-Variant Design
Simple furniture items with only one configuration:
Example: Fixed Design Armchair
Design Family: "NORDIC ARMCHAIR"
โโโ Design Version: "1.0"
โโโ Design Version Mesh: "Standard"
โโโ mesh_name: "MS-00004200"
โโโ mesh_label_name: "Standard"
โโโ name_for_multi_mesh_design: null (only one variant)
โโโ sort_order: 1Characteristics:
- Single variant available
- No size/configuration options
- Multi-variant naming not required
- Simple catalog presentation
Multi-Variant Design
Product families offering multiple size or configuration options:
Example: Danish Sofa Collection
Design Family: "DANISH SOFA"
โโโ Design Version: "2.5"
โโโ Design Version Mesh: "3 Seater 180"
โ โโโ mesh_name: "MS-00003100"
โ โโโ mesh_label_name: "3 Seater"
โ โโโ name_for_multi_mesh_design: "3 Seater 180cm"
โ โโโ japanese_name_for_multi_mesh_design: "3ไบบๆใ 180cm"
โ โโโ sort_order: 1
โ
โโโ Design Version Mesh: "2 Seater 160"
โ โโโ mesh_name: "MS-00003101"
โ โโโ mesh_label_name: "2 Seater"
โ โโโ name_for_multi_mesh_design: "2 Seater 160cm"
โ โโโ japanese_name_for_multi_mesh_design: "2ไบบๆใ 160cm"
โ โโโ sort_order: 2
โ
โโโ Design Version Mesh: "Ottoman"
โโโ mesh_name: "MS-00003102"
โโโ mesh_label_name: "Ottoman"
โโโ name_for_multi_mesh_design: "Ottoman 80cm"
โโโ japanese_name_for_multi_mesh_design: "ใชใใใใณ 80cm"
โโโ sort_order: 3Benefits:
- โ Customers can choose the size that fits their space
- โ Each variant maintains same design language
- โ Coordinated collection (can mix and match)
- โ Localized names for each variant
Modular Design System
Reusable design elements across multiple product families:
Example: Sectional Sofa System
Design Family: "MODULAR SECTIONAL"
โโโ Design Version: "3.0"
โโโ Design Version Mesh: "Left Arm Section"
โ โโโ mesh_sfid: MESH_LEFT (mesh_name: MS-00005200)
โ
โโโ Design Version Mesh: "Right Arm Section"
โ โโโ mesh_sfid: MESH_RIGHT (mesh_name: MS-00005201)
โ
โโโ Design Version Mesh: "Armless Section"
โ โโโ mesh_sfid: MESH_CENTER (mesh_name: MS-00005202)
โ
โโโ Design Version Mesh: "Corner Section"
โ โโโ mesh_sfid: MESH_CORNER (mesh_name: MS-00005203)
โ
โโโ Design Version Mesh: "Chaise Section"
โโโ mesh_sfid: MESH_CHAISE (mesh_name: MS-00005204)Modular Benefits:
- Users can configure custom layouts
- Each section is a complete furniture piece
- Mix and match to fit any space
- Consistent design across all sections
Related Pages
Core Resources
- Design Version - Parent concept overview
- Design Family - Top-level design hierarchy
- Category - Catalog organization
Material System
- Design Version Elements - Material components
- Materials - Application - Applying materials to meshes
Asset Management
- 3D Model Import - Importing custom 3D models
- Asset Pipeline - Asset creation workflow
- Performance Optimization - Mesh optimization guide
Technical Details
- Chunk System - Asset delivery system
- Localization - Multi-language support
- Caching Strategy - Client-side asset caching